Serwer WWW APACHE

Z SOISK systemy operacyjne i sieci komputerowe
Skocz do: nawigacja, szukaj

Apache - otwarty serwer HTTP dostępny dla wielu systemów operacyjnych (m.in. UNIX, Linux, BSD, Mac OS X, Microsoft Windows).

Popularność

Apache jest najszerzej stosowanym serwerem HTTP w Internecie. W maju 2006 jego udział wśród serwerów wynosił prawie 65%. 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.

Netcraft, firma specjalizująca się w monitorowaniu Internetu, w lipcu 2007 zbadała ponad 100 milionów witryn WWW. Okazało się, że udział Apache'a w rynku serwerów Web wynosi obecnie 48,42%, a udział microsoftowego IIS - 36,21. Podobne badania z listopada 2005 roku wykazały, że Apache miał wtedy 71% rynku, a Microsoft poniżej 20%.

Cechy serwera i obsługiwane moduły

  • wielowątkowość
  • skalowalność
  • bezpieczeństwo
  • Kontrola dostępu/uwierzytelnianie: mod_access
  • CGI
  • Proxy typu HTTP, 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
  • i inne...

Historia

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

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

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

'Main' server configuration

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

  • 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

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

Na podstawie http://pl.wikipedia.org/wiki/Apache_%28serwer%29