Nawigacja bloga

Najnowsze posty

Kopia zapasowa Windows 11 — kompletny poradnik backup i odzyskiwania
Kopia zapasowa Windows 11 — kompletny poradnik backup i odzyskiwania
9 wyświetlenia 0 Lubię
Kopia zapasowa Windows 11 — kompletny poradnik backup i odzyskiwania Backup w Windows 11 nie jest...
Czytaj więcej
Microsoft Access 2024 — bazy danych dla małych firm i urzędów
Microsoft Access 2024 — bazy danych dla małych firm i urzędów
9 wyświetlenia 0 Lubię
Microsoft Access 2024 — bazy danych dla małych firm i urzędów W wielu organizacjach porządek w...
Czytaj więcej
Microsoft Word 2024 — zaawansowane formatowanie dokumentów
Microsoft Word 2024 — zaawansowane formatowanie dokumentów
12 wyświetlenia 0 Lubię
Microsoft Word 2024 — zaawansowane formatowanie dokumentów Microsoft Word 2024 — zaawansowane...
Czytaj więcej
Home office 2026 — najlepsze oprogramowanie do pracy zdalnej
Home office 2026 — najlepsze oprogramowanie do pracy zdalnej
7 wyświetlenia 0 Lubię
Home office 2026 — najlepsze oprogramowanie do pracy zdalnej Praca zdalna w 2026 roku nie...
Czytaj więcej
Partycjonowanie dysku w Windows 11 — kompletny poradnik
Partycjonowanie dysku w Windows 11 — kompletny poradnik
9 wyświetlenia 0 Lubię
Partycjonowanie dysku w Windows 11 — kompletny poradnik Partycjonowanie dysku w Windows 11...
Czytaj więcej

Apache - światowy lider serwów. Co warto o nim wiedzieć?

95 Odsłony 0 Polubiony
 

Apache HTTP Server to najstarszy i jeden z najważniejszych serwerów www w historii internetu. Od ponad 25 lat obsługuje miliony stron internetowych na całym świecie, stanowiąc fundament World Wide Web. Choć jego dominacja została osłabiona przez pojawienie się Nginx i innych nowoczesnych serwerów, Apache pozostaje niezwykle popularnym i wszechstronnym rozwiązaniem. W tym artykule poznasz historię, architekturę, zalety i wady Apache oraz dowiesz się, kiedy jest najlepszym wyborem.

Czym jest Apache HTTP Server?

Apache HTTP Server (znany też jako Apache httpd lub po prostu Apache) to otwarto-źródłowy, wieloplatformowy serwer HTTP opracowywany przez Apache Software Foundation. Jest darmowy, dostępny na licencji Apache 2.0 i działa na systemach Linux, Windows Server, macOS, FreeBSD i wielu innych.

Nazwa „Apache" ma podwójne znaczenie — nawiązuje zarówno do rdzennych Amerykanów (plemię Apaczów), jak i do gry słów „a patchy server" (łatany serwer), ponieważ oryginalna wersja z 1995 roku powstawała jako zbiór poprawek (patches) do serwera NCSA HTTPd.

Krótka historia Apache

Apache powstał w 1995 roku z inicjatywy grupy webmasterów, którzy kontynuowali rozwój porzuconego serwera NCSA HTTPd. W 1999 roku utworzono Apache Software Foundation, która do dziś zarządza projektem. W szczytowym okresie (2005–2012) Apache obsługiwał ponad 70% wszystkich stron internetowych — rekord, który żaden inny serwer nie pobił.

Mimo spadku udziału rynkowego na rzecz Nginx, Apache w 2026 roku nadal obsługuje ok. 25–30% witryn i jest domyślnym serwerem w wielu dystrybucjach Linuxa oraz na większości serwerów hostingowych.

Architektura Apache — Multi-Processing Modules (MPM)

Apache oferuje kilka modułów przetwarzania (MPM — Multi-Processing Modules), które determinują sposób obsługi żądań:

prefork MPM

Klasyczny model procesowy — dla każdego połączenia tworzony jest osobny proces. Bezpieczny (izolacja procesów), ale zasobożerny. Wymagany przez mod_php. Jeden proces na połączenie oznacza, że 1000 jednoczesnych połączeń wymaga 1000 procesów, co przy ~2,5 MB na proces daje ~2,5 GB pamięci RAM.

worker MPM

Model hybrydowy — kilka procesów, z których każdy obsługuje wiele wątków. Bardziej wydajny niż prefork, ale wymaga aplikacji thread-safe. Wątek zużywa mniej zasobów niż cały proces, co pozwala obsłużyć więcej jednoczesnych połączeń.

event MPM

Najnowocześniejszy model — podobny do worker, ale z lepszą obsługą keep-alive. Dedykowany wątek nasłuchuje na istniejących połączeniach keep-alive, uwalniając wątki worker do obsługi nowych żądań. To znacząca poprawa wydajności przy dużym ruchu. Od Apache 2.4 event jest domyślnym MPM.

MPMModelPamięć na połączenieThread-safe wymagane?Zastosowanie
prefork1 proces = 1 połączenie~2,5 MBNieKompatybilność (mod_php)
workerProcesy + wiele wątków~256 KBTakWiększa wydajność
eventWorker + async keep-alive~256 KB + dedykowane keep-aliveTakWysokie obciążenia (domyślny)

Kluczowe cechy Apache

Pliki .htaccess — konfiguracja per-directory

Unikalna cecha Apache to obsługa plików .htaccess, które pozwalają na zmianę konfiguracji na poziomie pojedynczego katalogu bez restartu serwera. To kluczowa funkcja w hostingach współdzielonych, gdzie użytkownicy nie mają dostępu do głównego pliku konfiguracyjnego. Pliki .htaccess umożliwiają m.in. przekierowania URL, ochronę hasłem, reguły rewrite i kontrolę dostępu.

Wada .htaccess: Apache musi sprawdzać plik w każdym katalogu ścieżki dla każdego żądania, co wpływa na wydajność. Dlatego Nginx zrezygnował z tego mechanizmu na rzecz centralnej konfiguracji.

Moduły dynamiczne

Apache posiada jeden z najbogatszych ekosystemów modułów wśród serwerów www. Moduły można ładować i odładowywać dynamicznie (bez rekompilacji). Najważniejsze moduły:

  • mod_rewrite — zaawansowane przepisywanie URL (reguły SEO-friendly)
  • mod_ssl — obsługa HTTPS/TLS
  • mod_php — natywna obsługa PHP (wbudowana w proces Apache)
  • mod_proxy — reverse proxy i load balancing
  • mod_security — Web Application Firewall (WAF)
  • mod_deflate — kompresja Gzip
  • mod_cache — buforowanie odpowiedzi
  • mod_evasive — ochrona przed atakami DDoS

Virtual Hosts

Apache obsługuje wirtualne hosty (Virtual Hosts) — mechanizm pozwalający na serwowanie wielu stron internetowych z jednego serwera. Hosty mogą być rozróżniane na podstawie nazwy domeny (name-based) lub adresu IP (IP-based). To standard w hostingach współdzielonych.

Wsparcie dla .htpasswd i Basic Auth

Apache natywnie obsługuje proste uwierzytelnianie HTTP Basic przez pliki .htpasswd. Choć nie jest to bezpieczna metoda (hasła przesyłane w formie base64), w połączeniu z HTTPS jest wystarczająca do ochrony paneli administracyjnych i środowisk deweloperskich.

Apache a PHP — stos LAMP

Apache jest integralną częścią stosu LAMP (Linux, Apache, MySQL, PHP) — jednego z najstarszych i najpopularniejszych stosów technologicznych w historii web developmentu. Większość systemów CMS (WordPress, Joomla, Drupal, PrestaShop, Magento) została zaprojektowana z myślą o Apache.

mod_php vs PHP-FPM

Tradycyjnie Apache obsługiwał PHP przez moduł mod_php, który ładował interpreter PHP bezpośrednio do procesu Apache. Zaletą był prosty setup i dobra wydajność. Wadą — każdy proces Apache zużywał pamięć na interpreter PHP, nawet obsługując żądania statycznych plików.

Nowoczesnym podejściem jest PHP-FPM (FastCGI Process Manager) — osobny demon PHP obsługiwany przez Apache jako reverse proxy. PHP-FPM oferuje lepsze zarządzanie zasobami, izolację procesów i możliwość uruchamiania wielu wersji PHP jednocześnie. To samo rozwiązanie, którego używa Nginx.

Bezpieczeństwo Apache

Apache oferuje rozbudowane mechanizmy bezpieczeństwa:

mod_security — Web Application Firewall

ModSecurity to potężny moduł WAF dla Apache, który analizuje ruch HTTP i blokuje znane ataki: SQL injection, cross-site scripting (XSS), path traversal i inne. Zestawy reguł OWASP CRS (Core Rule Set) zapewniają ochronę out-of-the-box.

Hardening konfiguracji

Podstawowe kroki zabezpieczenia Apache obejmują:

  • Wyłączenie listowania katalogów (Options -Indexes)
  • Ukrycie wersji serwera (ServerTokens Prod)
  • Ograniczenie metod HTTP (wyłączenie TRACE, OPTIONS)
  • Konfiguracja nagłówków bezpieczeństwa (HSTS, X-Frame-Options, CSP)
  • Wyłączenie zbędnych modułów
  • Regularne aktualizacje — Apache wydaje poprawki bezpieczeństwa kilka razy w roku

SSL/TLS

Moduł mod_ssl obsługuje szyfrowanie HTTPS. Apache wspiera wszystkie nowoczesne protokoły (TLS 1.2, TLS 1.3) i algorytmy szyfrowania. Certyfikaty SSL można uzyskać bezpłatnie z Let's Encrypt — narzędzie Certbot automatycznie konfiguruje Apache.

Apache vs Nginx vs LiteSpeed — porównanie

Trzy najpopularniejsze serwery www różnią się podejściem, wydajnością i zastosowaniem:

AspektApacheNginxLiteSpeed
Model obsługiProcesowy/wątkowy (MPM)Asynchroniczny zdarzeniowyAsynchroniczny zdarzeniowy
Pliki .htaccessPełna obsługaBrakPełna obsługa
Statyczne plikiDobra wydajnośćDoskonała wydajnośćDoskonała wydajność
PHPmod_php / PHP-FPMTylko PHP-FPMNatywny LSAPI (najszybszy)
CenaDarmowy (Apache 2.0)Darmowy (BSD)Darmowy (Open) / komercyjny
Ekosystem modułówNajwiększyMniejszyKompatybilność z Apache
Użycie pamięciWysokie (prefork)NiskieNiskie

Kiedy wybrać Apache?

Apache jest najlepszym wyborem, gdy: potrzebujesz obsługi .htaccess (hosting współdzielony), korzystasz z mod_php lub mod_security, masz istniejącą konfigurację Apache (migracja kosztuje), lub potrzebujesz specyficznych modułów dostępnych tylko dla Apache.

Kiedy wybrać Nginx?

Nginx sprawdza się lepiej jako reverse proxy, load balancer, serwer statycznych plików i w scenariuszach z bardzo dużą liczbą jednoczesnych połączeń. Więcej o Nginx dowiesz się z artykułu Nginx — co to jest i jak działa?

Instalacja Apache na serwerze

Instalacja Apache jest prosta i dobrze udokumentowana na wszystkich popularnych systemach:

Linux (Ubuntu/Debian)

Na serwerach Ubuntu: sudo apt install apache2. Apache uruchomi się automatycznie i zacznie serwować domyślną stronę na porcie 80. Zarządzanie usługą odbywa się przez systemctl: start, stop, restart, reload, enable.

Linux (CentOS/RHEL)

Na serwerach CentOS/RHEL: sudo yum install httpd (lub dnf install httpd na nowszych wersjach). Pakiet nosi nazwę httpd, nie apache2.

Windows Server

Apache jest dostępny dla Windows Server — dystrybucje Apache Lounge i XAMPP oferują gotowe paczki instalacyjne. Na Windows Apache działa jako usługa systemowa i może być zarządzany przez Services.msc.

Weryfikacja instalacji

Po instalacji sprawdź wersję (apache2 -v lub httpd -v), status usługi (systemctl status apache2) i otwórz przeglądarkę pod adresem IP serwera — powinna pojawić się domyślna strona Apache. Testuj konfigurację przed restartem: apache2ctl configtest.

Apache w środowiskach produkcyjnych — optymalizacja wydajności

Choć Apache nie jest najszybszym serwerem www, odpowiednia konfiguracja może znacząco poprawić jego wydajność:

Wybór odpowiedniego MPM

Dla nowoczesnych aplikacji PHP z PHP-FPM (zamiast mod_php) należy używać event MPM — oferuje najlepszą wydajność przy dużej liczbie jednoczesnych połączeń. Prefork MPM powinien być stosowany tylko wtedy, gdy wymaga tego mod_php lub inne moduły non-thread-safe.

Wyłączenie AllowOverride

Jeśli nie potrzebujesz plików .htaccess, wyłączenie AllowOverride None eliminuje koszty wydajnościowe — Apache nie musi sprawdzać każdego katalogu w ścieżce. Zamiast tego przenieś reguły bezpośrednio do konfiguracji VirtualHosta.

Włączenie kompresji i cache

Moduły mod_deflate (kompresja Gzip) i mod_expires (nagłówki cache HTTP) zmniejszają transfer danych i liczbę żądań. Kompresja HTML, CSS i JavaScript zmniejsza rozmiar transferu o 60–80%. Odpowiednie nagłówki Expires i Cache-Control pozwalają przeglądarkom buforować statyczne zasoby.

Keep-Alive i TimeOut

Włączenie KeepAlive On pozwala na wielokrotne żądania przez jedno połączenie TCP — zmniejsza latencję ładowania stron z wieloma zasobami. Jednocześnie należy ustawić rozsądny KeepAliveTimeout (2–5 sekund), aby nie blokować procesów worker na bezczynnych połączeniach.

Monitorowanie wydajności

Moduł mod_status udostępnia stronę statusu Apache z informacjami o aktywnych połączeniach, obciążeniu procesów worker i statystykach żądań. Narzędzia jak apachectl fullstatus i zewnętrzne systemy monitoringu (Prometheus, Grafana, Datadog) pozwalają na ciągłe śledzenie wydajności serwera z Windows Server 2022 lub Linuxem.

FAQ — najczęściej zadawane pytania o Apache

Czy Apache jest nadal używany w 2026 roku?

Tak. Apache obsługuje ok. 25–30% stron internetowych i jest domyślnym serwerem w wielu hostingach. Choć traci udział rynkowy na rzecz Nginx, jest nadal aktywnie rozwijany i powszechnie stosowany, szczególnie w ekosystemie PHP (WordPress, Joomla, PrestaShop).

Apache czy Nginx — co jest lepsze?

Nie ma jednoznacznej odpowiedzi. Apache oferuje większą elastyczność (.htaccess, moduły), Nginx lepszą wydajność przy dużym ruchu. Najczęstsze rozwiązanie produkcyjne to Nginx jako reverse proxy przed Apache — łączy zalety obu serwerów.

Jak sprawdzić, czy na serwerze działa Apache?

Na Linuxie: systemctl status apache2 (lub httpd). Możesz też sprawdzić nagłówki HTTP odpowiedzi — nagłówek Server zwykle zawiera „Apache". W przeglądarce otwórz narzędzia deweloperskie (F12) → zakładka Network → nagłówki odpowiedzi.

Co to jest stos LAMP?

LAMP to akronim od Linux, Apache, MySQL (lub MariaDB), PHP (lub Python/Perl). To klasyczny stos technologiczny do budowy dynamicznych stron internetowych. Większość systemów CMS (WordPress, PrestaShop, Magento) działa na stosie LAMP.

Jak zabezpieczyć Apache?

Kluczowe kroki: włącz HTTPS z TLS 1.2+ (mod_ssl + Let's Encrypt), zainstaluj ModSecurity z regułami OWASP CRS, wyłącz listowanie katalogów, ukryj wersję serwera, ogranicz metody HTTP, skonfiguruj nagłówki bezpieczeństwa (HSTS, CSP, X-Frame-Options) i regularnie aktualizuj serwer.

Podsumowanie

Apache HTTP Server to legenda internetu — serwer, który pomógł zbudować World Wide Web takim, jakim go znamy. Mimo rosnącej konkurencji ze strony Nginx i LiteSpeed, Apache pozostaje solidnym, wszechstronnym i dobrze udokumentowanym rozwiązaniem, szczególnie w ekosystemie PHP i na hostingach współdzielonych.

Niezależnie od tego, który serwer www wybierzesz, potrzebujesz odpowiedniego systemu operacyjnego. W KluczeSoft znajdziesz Windows Server 2022 Standard z natychmiastową dostawą klucza licencyjnego. Przeczytaj też, jak dobór procesora CPU i pamięci RAM wpływa na wydajność serwera www.

Polecane produkty

Najczesciej zadawane pytania

Gdzie kupić tanie licencje Microsoft?

W KluczeSoft.pl — oryginalne klucze Windows i Office od 149 zł z natychmiastową dostawą e-mailem.

Czy dostawa klucza jest natychmiastowa?

Tak, klucz produktu jest wysyłany automatycznie e-mailem w ciągu 5 minut od zaksięgowania płatności.

Czy mogę zwrócić zakupiony klucz?

Tak, oferujemy 14-dniowe prawo zwrotu zgodnie z prawem konsumenckim UE — bez podawania przyczyny.

 
Czy ten wpis na blogu był dla Ciebie pomocny?
Opublikowano w: Hardware

Dodaj komentarz

Kod zabezpieczający
z VAT
🛒 Do koszyka