Apache HTTP Server

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania
Apache
Serwer WWW
ASF-logo.svg
Logo programu
Producent Apache Software Foundation
System operacyjny GNU/Linux, OS X, Windows
Aktualna wersja stabilna 2.4.7 (25 listopada 2013)
Licencja Apache License
apache.org

Apacheotwarty serwer HTTP dostępny dla wielu systemów operacyjnych (m.in. UNIX, GNU/Linux, BSD, OS X, Microsoft Windows).

Popularność[edytuj | edytuj kod]

Apache jest najszerzej stosowanym serwerem HTTP w Internecie. W październiku 2013 jego udział wśród serwerów wynosił 45%. W połączeniu z interpreterem języka skryptowego PHP i bazą danych MySQL, Apache stanowi jedno z najczęściej spotykanych środowisk w firmach oferujących miejsce na serwerach sieciowych[1].

Statystyki wykorzystania serwerów www (dane z października 2013[2] wg serwisu Netcraft):

Apache 344,408,387 44.89%
Microsoft 177,216,296 23.10%
nginx 123,114,800 16.05%
Google 34,127,482 4.45%

Cechy serwera i obsługiwane moduły[edytuj | edytuj kod]

  • wielowątkowość
  • skalowalność
  • bezpieczeństwo
  • Kontrola dostępu/uwierzytelnianie: mod_authz_host
  • CGI
  • Proxy typu HTTP, Apache JServe Protocol, FTP, CONNECT: mod_proxy*
  • SSI: mod_include
  • Content-Negotation: mod_negotation
  • Moduł URL-Rewriting: mod_rewrite
  • SSL: mod_ssl
  • możliwość osadzania interpreterów języków skryptowych, np. mod perl, mod_php czy mod_python

Historia[edytuj | edytuj kod]

Serwer Apache wywodzi się z kodu serwera HTTP napisanego przez Roba McCoola, pracownika NCSA

  • kwiecień 1995 - wersja 0.6.2 pierwsza oficjalna wersja serwera HTTP Apache
  • sierpień 1995 - wersja 0.8.8 dodanie standardowego API i modularyzacja kodu
  • grudzień 1995 - wersja 1.0 ulepszenie modułów serwera, napisanie dokumentacji, przeniesienie serwera na wiele różnych platform systemowych

Konfiguracja[edytuj | edytuj kod]

Najnowsze wersje serwera Apache posiadają interfejs graficzny GUI. Program Apache parsuje plik konfiguracyjny httpd.conf (oraz inne zdefiniowane przez użytkownika, bądź sam program).

Plik konfiguracyjny dystrybucji Apache z serii 2.0 zawiera sekcje:

Global Environment[edytuj | edytuj kod]

  • środowisko serwera
  • podstawowe parametry sieciowe
  • lista dołączanych modułów

'Main' server configuration[edytuj | edytuj kod]

  • położenie dokumentów
  • połączenie
  • aliasy
  • określenie dostępu do zasobów
  • formaty i położenie dzienników serwera
  • moduły CGI
  • opcje automatycznego indeksowania katalogów
  • Content Negotation (ang. negocjacja treści)
  • własne dokumenty błędów serwera (dyrektywy ErrorDocument)
  • konfiguracja modułu mod_proxy

Virtual Hosts[edytuj | edytuj kod]

  • odwrotny DNS
  • lista i konfiguracja ewentualnych hostów wirtualnych obsługiwanych przez maszynę

Niektóre większe moduły (np. mod_SSL) mogą posiadać własne sekcje w pliku httpd.conf bądź oddzielny plik dla własnych ustawień. Aby zmiany dokonane w plikach konfiguracyjnych zostały uwzględnione, konieczne jest zrestartowanie procesu serwera.

Bezpieczeństwo[edytuj | edytuj kod]

Serwer Apache nie jest wolny od luk stwarzających potencjalne zagrożenie. Dotyczy to szczególnie ataków typu DoS[3].

Zobacz też[edytuj | edytuj kod]

Inne serwery WWW[edytuj | edytuj kod]

Przypisy

Linki zewnętrzne[edytuj | edytuj kod]