Apache jest najbardziej popularnym na świecie, open sourcowym serwerem webowym.
Obecnie używa go połowa aktywnych stron internetowych na całym świecie.
Jest częścią bardzo popularnego pakietu oprogramowania służącego do rozwijania
aplikacji
webowych zwanego LAMP.
Apache HTTP serwer jest programem który pracuje w tle. Jego głównym zadaniem jest komunikacja poprzez sieć używając protokołu TCP/IP. Przy uruchomieniu jego zachowanie jest ustawiane poprzez pliki konfiguracyjne. W stanie bezczynności słucha on adresów IP które ma podane w pliku httpd.conf. W wypadku gdy na którychś z nich przyjdzie zapytanie, analizuje znajdujące się w nim nagłówki i podąża za wytycznymi odpowiadającymi tym nagłówkom znajdującym się w pliku konfiguracyjnym. Dla zapytań statycznych (w formie URL) "tłumaczy" on to zapytanie na odpowiedni plik znajdujący się na jego dysku lokalnym i wysyła go przez internet klientowi użytkownika (zazwyczaj przeglądarce internetowej). W przypadku zapytania dynamicznego uruchamia odpowiedni program z przesłanymi informacjami i po jego wykonaniu wysyła output tego programu do jednostki która to zapytanie wysłała. Jeśli w jakimś przypadku serwer nie będzie w stanie przerobić zapytania użytkownika to wyśle mu odpowiedni komunikat błędu.
Apache HTTP serwer jest jednym z najbardziej funkcjonalnych serwerów HTTP. Jego podstawowa funkcjonalność jest ograniczona, ale duża ilość instalowalnych modułów sprawia że jest jednym z najbardziej funkcjonalnych serwerów HTTP.
Windows, Linux czy MacOS X: Apache HTTP serwer jest kompatybilny z wszystkimi popularnymi systemami operacyjnymi oraz tymi mniej popularnymi jak NetWare czy OpenVMS.
Apache HTTP serwer jest jednym z najdłużej istniejących i najpewniejszych serwerów webowych. Istnieje od 1995 roku i jest aktywnie i regularnie utrzymywany. Ostatnia aktualizacja wersji stabilnej pojawiła się 14 grudnia 2015
Pomimo prostej funkcjonalności podstawowej, serwer Apachea wspiera wiele funkcjonalności w postaci skompilowanych modułów, które poszerzają jego podstawowe możliwości. Od wsparcia dla języków programowania po stronie serwera do schematów uwierzytelniających. Oto niektóre z jego funkcjonalności: