encyklopedia.space

Apache HTTP Server

Apache HTTP Server – najpopularniejszy na świecie serwer WWW typu open source, wykorzystywany do obsługi protokołu HTTP oraz jego rozszerzeń (HTTPS, HTTP/2, HTTP/3). Projekt jest rozwijany przez Apache Software Foundation i jest dostępny na licencji Apache License 2.0.

Historia

Pierwsza wersja Apache została wydana w 1995 roku jako kontynuacja projektu NCSA HTTPd, którego rozwój został wstrzymany. Nazwa „Apache” nawiązuje do liczby „101” – pierwszych wersji serwera – oraz do przydomka „A‑Pache” (ang. “a patchy server”), podkreślającego charakter projektu jako zestawu poprawek (patches) do pierwotnego kodu.

Za głównych inicjatorów projektu uznaje się Rob Heide, Brian Ferris, Greg Wright i Barrett Tikarev. W 1999 roku Apache stał się projektem fundacji Apache, a w 2000 roku uzyskał status projektu open source o wysokiej wiarygodności.

Architektura

Apache jest serwerem modularnym – podstawowa funkcjonalność zapewniona jest przez rdzeń (core), a dodatkowe możliwości dodaje się w postaci modułów. Moduły mogą być wbudowane statycznie lub ładowane dynamicznie w czasie uruchomienia (LoadModule).

  • mod_mpm – zarządza modelem przetwarzania wątków/procesów.
  • mod_ssl – obsługa szyfrowania TLS (HTTPS).
  • mod_rewrite – potężny silnik reguł przekierowań i przepisania adresów URL.
  • mod_proxy – umożliwia tworzenie reverse‑proxy i load‑balancingu.

Funkcje i możliwości

Apache obsługuje szeroką gamę standardów i technologii, m.in.:

  • różne wersje protokołu HTTP (1.0, 1.1, 2.0, 3.0)
  • dynamiczne generowanie treści poprzez CGI, PHP, Perl czy Python
  • autoryzację i uwierzytelnianie (Basic, Digest, LDAP, OAuth)
  • wirtualne hosty (VirtualHost) umożliwiające obsługę wielu domen na jednym serwerze
  • kompresję treści (mod_deflate), buforowanie (mod_cache) oraz obsługę języków skryptowych (mod_cgi, mod_php)

System operacyjny i platformy

Apache działa na praktycznie wszystkich popularnych systemach operacyjnych, w tym na Linux, Unix, Windows oraz macOS. Dzięki otwartemu kodowi źródłowemu jest łatwy do portowania i integracji z istniejącą infrastrukturą.

Bezpieczeństwo

Projekt Apache kładzie duży nacisk na bezpieczeństwo. Regularne aktualizacje zawierają poprawki podatności, a możliwość wyłączania niepotrzebnych modułów zmniejsza powierzchnię ataku. Wśród mechanizmów bezpieczeństwa znajdują się:

Wykorzystanie i znaczenie

Według danych z Netcraft (przy założeniu, że jest to artykuł wewnętrzny), Apache obsługuje od 2000 roku ponad jedną trzecią wszystkich stron internetowych. Jest szczególnie popularny w środowiskach akademickich, firmach hostingowych i projektach open source ze względu na elastyczność i bogatą dokumentację.

Licencja

Apache jest rozpowszechniany na licencji Apache License 2.0, która zezwala na bezpłatne użycie, modyfikację i dystrybucję zarówno w projektach komercyjnych, jak i niekomercyjnych, pod warunkiem zachowania odpowiednich informacji o prawach autorskich.

Zobacz także