Apache HTTP Server
| ||
![]() Logo programu | ||
Autor | Apache Software Foundation | |
Aktualna wersja stabilna | 2.4.38 (17 stycznia 2019) [±] | |
---|---|---|
System operacyjny | GNU/Linux, OS X, Windows | |
Rodzaj | Serwer WWW | |
Licencja | Apache License | |
Strona internetowa |
Apache – otwarty serwer HTTP dostępny dla wielu systemów operacyjnych (m.in. UNIX, GNU/Linux, BSD, OS X, Microsoft Windows).
Spis treści
Popularność[edytuj | edytuj kod]
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% |
21 662 673 | 2,07% |
Apache jest używany przez 53,06% wszystkich polskich domen[3].
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[4].
Zobacz też[edytuj | edytuj kod]
Przypisy[edytuj | edytuj kod]
- ↑ Nigerian government hosts Halifax phishing site. [dostęp 2012-01-06].
- ↑ June 2016 Web Server Survey – Netcraft
- ↑ Statystyki polskiego Internetu amudom.pl, www.amudom.pl [dostęp 2017-02-16] (pol.).
- ↑ National Vulnerability Database, 2006-07-28.