Serwer HTTP Apache

Serwer HTTP Apache Opis domyślnego obrazu Apache page.png. Informacja
Opracowany przez Fundacja oprogramowania Apache
Pierwsza wersja 1995
Ostatnia wersja 2.4.46 (5 sierpnia 2020 r)
Wersja zaawansowana 2.5.0-alfa (8 listopada 2017 r)
Kaucja svn.apache.org/repos/asf/httpd/httpd
Napisane w VS
System operacyjny Wieloplatformowy
Języki język angielski
Rodzaj serwer internetowy
Licencja Licencja Apache w wersji 2.0
Stronie internetowej httpd.apache.org

Darmowe oprogramowanie Apache HTTP Server ( Apache ) jest serwer HTTP tworzone i utrzymywane w Apache Foundation . Do kwietnia 2019 roku był to najpopularniejszy serwer HTTP w sieci WWW . Jest rozpowszechniany na warunkach licencji Apache .

Historyczny

Pojawił się Apache Kwiecień 1995. Na początku był to zbiór poprawek i dodatków do serwera NCSA HTTPd 1.2, który znajdował się w domenie publicznej i był wówczas najpopularniejszym serwerem HTTP. Z tego powodu wiele osób twierdzi, że nazwa Apache pochodzi od niejednakowego serwera lub „ niejednorodnego serwera ”. Następnie Apache został całkowicie przepisany, więc w wersji 2 nie ma śladu NCSA HTTPd.

Początkowo Apache był jedynym poważnym i darmowa alternatywa dla serwera HTTP z Netscape ( iPlanet , teraz Sun ONE ). OdKwiecień 1996Według trwających badań Netcraft , Apache stał się najpopularniejszym serwerem HTTP w Internecie .

Udział w rynku Apache:

Apache w wersji 2 ma kilka głównych ulepszeń w stosunku do wersji 1, w tym obsługę wielu platform ( między innymi Windows , Linux i UNIX ), obsługę lekkich procesów UNIX , nowy interfejs API i obsługę protokołu IPv6 .

Fundacja Apache ( Apache Software Foundation lub ASF ) powstała w 1999 roku z grupy Apache ( Apache Group ), która stworzyła serwer w 1995 roku . Od tego czasu wraz z serwerem HTTP powstało wiele innych programów przydatnych w sieci WWW .

Dostępność

Apache działa głównie na systemach operacyjnych UNIX ( Linux , Mac OS X , Solaris , BSD i UNIX ) i Windows . Wersja dla Windows jest uważana za stabilną dopiero od wersji Apache 1.2. Apache jest używany przez wiele produktów, w tym WebSphere firmy IBM , a także Oracle Corporation .

funkcje

Apache jest zaprojektowany do obsługi wielu modułów dających mu dodatkową funkcjonalność: interpretacja Perl , PHP , Python i Ruby , serwer proxy , Common Gateway Interface , Server Side Includes , przepisywanie adresu URL , negocjacja treści, dodatkowe protokoły komunikacyjne itp. Należy jednak zauważyć, że istnienie wielu modułów Apache komplikuje konfigurację serwera WWW. Rzeczywiście, najlepsze praktyki zalecają ładowanie tylko przydatnych modułów: wiele luk w zabezpieczeniach wpływających tylko na moduły Apache jest regularnie odkrywanych.

Możliwości konfiguracyjne Apache to cecha flagowa. Zasada opiera się na hierarchii plików konfiguracyjnych, którymi można zarządzać niezależnie. Ta funkcja jest szczególnie przydatna dla hostów, którzy mogą obsługiwać witryny kilku klientów przy użyciu jednego serwera HTTP . Dla klientów ta funkcjonalność jest widoczna w pliku .htaccess .

Wśród narzędzi pomagających w utrzymaniu Apache, pliki dziennika można analizować za pomocą wielu skryptów i bezpłatnego oprogramowania, takiego jak AWStats , Webalizer czy W3Perl . Konfigurację serwera ułatwia kilka interfejsów graficznych.

Kilka ciekawych modułów

Tryby Prefork, Worker i Event

Te dwa główne tryby działania znacząco zmieniają wydajność serwera HTTP.

Historycznie rzecz biorąc, Apache działa w trybie prefork , co oznacza, że ​​proces nadrzędny uruchomiony z rozszerzonymi uprawnieniami ( root ) uruchamia procesy potomne, z których każdy obsługuje określoną liczbę żądań klientów. Jednak w Linuksie mnożenie procesów powoduje wzrost zużycia zasobów (pamięci, deskryptorów plików).

W pracownika trybie , Apache uruchamia wątki , które będą obsługiwać przychodzące żądania. Różnica polega na tym, że jest to bardziej wyprzedzający tryb, w którym proces nadrzędny przygotowuje zasoby dla swoich wątków. Moduły opracowane przez strony trzecie lub biblioteki używane przez te moduły nie mogą być zaprojektowane do pracy w środowisku wielowątkowym; w takim przypadku mogą być źródłem nieprawidłowego działania, jeśli są używane w trybie roboczym .

Od wersji 2.4 moduł zdarzeń jest dostępny w produkcji. To pochodzi od pracownika trybie tym wyjątkiem, że nici nie tylko usługę połączenia klienta, ale może wykonywać wiele zadań niezależnych od połączenia. W ten sposób KeepAlivelepiej zarządza się pojęciami w tym sensie, że wątek nie czeka już na zakończenie połączenia, aby obsłużyć inny. Mówiąc dokładniej, wątek obsługuje żądanie, a nie połączenie.

Moduły: prefork.c, worker.c, event.c

Moduły proxy

Między innymi poprzez mod_proxy możliwe jest wykorzystanie serwera Httpd jako prawdziwego proxy .

Jednym z najbardziej interesujących zastosowań jest równoważenie obciążenia , albo w kontekście wysokiej dostępności, albo w celu uzyskania lepszej wydajności. Umiejętności Reverse Proxying są wystarczająco rozwinięte, aby bezproblemowo wypuścić je do produkcji od wersji 2.1.

Moduły: mod_proxy, mod_proxy_balancer, mod_proxy_http, mod_proxy_ajp, mod_proxy_connect

Uwagi i odniesienia

  1. (w) Daniel Ruggeri, „  Apache HTTP Server 4.2.46 wydany  ” ,7 sierpnia 2020 r(dostęp 7 sierpnia 2020 )
  2. „  https://github.com/apache/httpd/releases/tag/2.5.0-alpha  ” (dostęp: 4 września 2019 r. )
  3. (en-GB) „  Kwiecień 2019 Web Server Survey | Netcraft News  ” , na news.netcraft.com (dostęp 15 stycznia 2020 r. )
  4. "  Informacje o projekcie serwera HTTP Apache  " [ archiwum15 kwietnia 1997] ,15 kwietnia 1997
  5. "  Często zadawane pytania dotyczące serwera Apache  " [ archiwum6 stycznia 1997] (dostęp 15 stycznia 2017 )
  6. „  Ankieta dotycząca serwerów WWW z lutego 2005 r. Wskazuje 40 milionów witryn na serwerze Apache  ” .
  7. news.netcraft.com/ .
  8. PHP 5.2 używane przez 23% witryn internetowych (stan na luty 2008) .
  9. Netcraft: Ankieta dotycząca serwerów WWW z lutego 2008 r .
  10. Serwery WWW: 72,45% udziału w rynku Apache , opublikowany 16 grudnia 2008, artykuł cytujący SecuritySpace jako źródło.
  11. Netcraft: maj 2014 Web Server Survey , opublikowane na 1 st maja 2014 r.
  12. (in) "  Ile jest aktywnych stron internetowych?  " , Netcraft
  13. (w) „  Styczeń 2015 Web Server Survey  ” , Netcraft,15 stycznia 2015(dostęp 27 stycznia 2015 )
  14. „  Statystyki dotyczące francuskiego internetu. udomo.fr  ” na www.udomo.fr (dostęp 12 lutego 2017 )

Załączniki

Powiązane artykuły

Linki zewnętrzne