[[분류:웹 서버 소프트웨어]][[분류:아파치 소프트웨어 재단]] [목차] == 개요 == ||<table width=100%><table bordercolor=black> {{{#!wiki style="margin: -5px -10px; background-image: linear-gradient(to top, midnightblue, midnightblue, midnightblue, midnightblue, midnightblue, white, white, white, white, white, white, white, white, white, white)" [[파일:external/httpd.apache.org/httpd_logo_wide_new.png|width=100%]] }}} || || '''Apache HTTP Server의 로고''' || || [[http://httpd.apache.org|{{{#black,#fff 공식 홈페이지}}}]] || [clearfix] ||<-3><table align=right><table width=320px><table bgcolor=white,#2d2f34><bgcolor=midnightblue><table bordercolor=midnightblue><table color=black,#fff> {{{+3 {{{#white Apache HTTP Server의 역사}}}}}} || ||<bgcolor=midnightblue> {{{#white 현재 버전}}} ||<-2> 2.4.41(2019년 8월 14일) || ||<rowbgcolor=midnightblue><-2> {{{#white 버전}}} || {{{#white 공개일}}} || ||<bgcolor=midnightblue> {{{#white Apache}}} || 1.3 || 1998년 6월 6일 || ||<|3><bgcolor=midnightblue> {{{#white Apache 2}}} || 2.0 || 2002년 4월 6일 || || 2.2 || 2005년 12월 1일 || || 2.4 || 2012년 2월 21일 || Apache HTTP Server는 [[오픈 소스]] [[소프트웨어]] 그룹인 [[아파치 소프트웨어 재단]]에서 만드는 [[웹 서버]] 프로그램이다. [[팀 버너스 리]]가 만든 최초의 웹 서버 프로그램인 "NCSA HTTPd"를 기반으로 만들어졌다. 팀 버너스 리의 NCSA HTTPd는 [[유닉스]] 기반으로 만들어졌기에, 아파치 HTTP 서버는 NCSA HTTPd를 [[리눅스]]에서도 돌리는 것을 목표로 만들어진 프로그램이다. 그 이후 리눅스와 함께 퍼져나갔고, 리눅스가 서버 OS의 최다 점유율을 차지하자 아파치도 자연스럽게 최다 점유율을 차지하게 되었다. 현재 거의 모든 리눅스 배포판이 이 아파치를 지원한다. [clearfix] == 상세 == 아파치는 확장성이 상당히 좋은데, 모듈이라는 개념으로 수많은 기능을 덧붙일 수 있다. 이 모듈을 통해 다른 프로그램과의 연동도 가능하다. 이 때문에 여러가지 서버 사이드 [[프로그래밍 언어]]나 [[DBMS]]와도 궁합이 잘 맞았는데, 초창기에는 [[Perl]]이 대세였고, [[PHP]]가 그 뒤를 이었다. 바로 PHP 모듈을 통해 PHP를 실행할 수도 있지만, 주로 속도 향상을 위해 PHP-FPM을 통해 PHP를 연결해서 사용한다. 좀 더 고성능을 원하는 사람은 HHVM을 쓴다.[* 하지만 PHP 7이 발표되면서 속도 면에서 HHVM은 강력한 적수를 만나게 되었다.] 그리고 오픈소스 DBMS인 [[MySQL]]이 나오자, Apache+PHP+MySQL을 통틀어 "APM"이라고 통칭하면서 웹 서버를 돌리기 위한 기본 3종 세트 비스무레하게 되었다. 물론 다른 언어와 다른 DBMS도 지원하지만, 저 조합이 가장 인지도가 높다. [[JSP]]의 경우에도 설정이 조금 귀찮아지지만 [[톰캣]]과 연동하여 돌릴 수 있다. 라이선스는 [[GNU 일반 공중 사용 허가서|GPL]]이 아닌 자체 라이선스를 쓴다. [[아파치 라이선스]] 2.0을 따르는데, 아파치 소프트웨어 재단에서 만들었다는 사실을 밝히고 아파치 라이선스를 따르면 자유롭게 수정 및 재배포가 가능하다. 소스 공개 강제 사항도 없는 자유로운 라이선스다. 그러나 2.2 버전대에서 너무 무겁다는 평이 많아졌고, 빠른 속도를 내세운 [[NGINX]]라는 웹 서버 프로그램이 새로 나오면서 아파치의 위기가 왔다. 아파치는 Event MPM을 탑재하여 속도를 크게 개선한 2.4 버전을 내놓으면서 여기에 대응하고 있다. 기능이 매우 많은 웹서버이지만 그 기능을 다 활용하는 사람이 드문 그런 프로그램이다. 확장 모듈이 매우 다양하여 간단하게 설치하고 사용 가능하지만 대부분의 사람은 이 프로그램과 [[PHP]], [[MySQL]]만 설치하고 돌린다. 그리고 그 기능들은 [[NGINX]]에도 그대로 존재하고, 더 빠르다. 호환성을 확인하고 옮길 수 있으면 옮기는 게 좋다. [[Microsoft Windows|윈도우]]용도 나온다. 윈도우에도 XAMPP나 APMSetup 등의 아파치 웹 서버+PHP+MySQL을 편리하게 통합해 설치할 수 있는 패키지가 나와 있다. 셋 다 윈도우용이 나오기 때문에 가능한 것. 그러나 아무래도 [[리눅스]]/[[유닉스]] 베이스로 만들어진 프로그램이다보니 윈도우에서는 제 속도가 나오지 않는다. 윈도우 버전은 서버 입문자의 디버깅 환경 구축용 혹은 PHP+MySQL 연습용 정도라고 보면 된다. 거기다 윈도우 서버에는 MS가 자체적으로 만든 [[인터넷 정보 서비스]](IIS)가 있기 때문에, IIS에 FastCGI 모듈로 PHP를 연결시켜서 돌리는 것이 보통이다. 이 때문에 PHP의 윈도우 버전은 IIS용과 Apache/NGINX용이 따로 나온다. 2017년 10월 기준으로 실질적으로 작동하는 웹 사이트(active site)들에서 쓰이는 [[웹 서버|웹 서버 소프트웨어]] 순위는 [[아파치 HTTP 서버]](44.89%), [[NGINX|엔진엑스]](20.65%), [[Google Web Server|구글 웹 서버]](7.86%), [[인터넷 정보 서비스|MS 인터넷 정보 서비스]](7.32%) 순이다.[* [[https://news.netcraft.com/archives/2017/10/26/october-2017-web-server-survey-13.html]]]