Apache HTTP Server

Z Wikipedii, wolnej encyklopedii
(Przekierowano z Apache (serwer))
Skocz do: nawigacja, szukaj
Apache
Serwer WWW
Logo Apache
Logo programu
Autor Apache Software Foundation
System operacyjny GNU/Linux, OS X, Windows
Aktualna wersja stabilna 2.4.29
(23 października 2017) [±]
Licencja Apache License
Strona internetowa

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

Popularnośćedytuj

Apache jest najszerzej stosowanym serwerem HTTP w Internecie. W sierpniu 2015 jego udział wśród serwerów wynosił ponad 37%. 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 czerwca 2016 według serwisu Netcraft[2]):

Apache 360 458 018 34,48%
Microsoft IIS 342 605 666 32,77%
nginx 169 316 547 16,19%
Google 21 662 673 2,07%

Apache jest używany przez 53,06% wszystkich polskich domen[3].

Cechy serwera i obsługiwane modułyedytuj

  • 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

Historiaedytuj

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

Konfiguracjaedytuj

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 Environmentedytuj

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

‘Main’ server configurationedytuj

  • 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 Hostsedytuj

  • 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ństwoedytuj

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

Zobacz teżedytuj

Przypisy

Linki zewnętrzneedytuj