Seit zwei Jahrzehnten verändert Apache den schrumpfenden Webserver-Markt. Nginx hat nicht nur zu Apache aufgeschlossen, sondern ist mittlerweile auch die erste Wahl für viele stark frequentierte Websites. Apache-Benutzer sind sich in dieser Frage möglicherweise nicht einig. Deshalb ist es schwierig zu entscheiden, welcher Webhoster besser ist. Die Wahrheit ist, dass sowohl Apache als auch Nginx Kernbestandteile kompletter Web-Stacks (sowohl LAMP als auch LEMP) sind und die endgültige Wahl von den individuellen Bedürfnissen abhängt.
Beispielsweise entscheiden sich Benutzer, die Drupal-Websites betreiben, häufig für Apache, während WordPress- Benutzer offenbar eher Nginx bevorzugen. Ziel dieses Artikels ist es daher, Ihnen dabei zu helfen, Ihre eigenen Anforderungen besser zu verstehen, und nicht, stereotype Empfehlungen für jedermann zu geben. Der folgende Vergleich zwischen Nginx und Apache verschafft Ihnen einen genauen Überblick.
Ist Nginx oder Apache ein besserer Server?
1. Popularität
Im Jahr 2012 basierten mehr als 65 % der Websites auf Apache. Die Popularität ist nicht nur auf die lange Geschichte von Apache zurückzuführen. Dies ist eine der ersten bahnbrechenden Software für die Entwicklung des World Wide Web. Allerdings haben sich die Zeiten geändert. Laut W3Tech.com war am 14. Januar 2019 die Anzahl der Websites, die Apache-Server nutzten (44,4 %), nur geringfügig höher als die von Nginx (40,9 %). Nginx und Apache dominieren fast 85 % des Webservermarktes.
Wenn es um stark frequentierte Websites geht, ist die folgende Grafik interessant. Insbesondere steht Nginx über Apache, aber unter Google Servers, einem Dienst, der Server für Websites wie YouTube , Gmail und Drive bereitstellt.
Eine große Anzahl von Websites ist von Apache auf Nginx migriert. Offensichtlich gilt Nginx als neuerer und trendigerer Webserver. Stark frequentierte Websites auf Apache, zum Beispiel Wikipedia und die New York Times, verwenden häufig einen Front-End-HTTP-Proxy wie Varnish.
Fazit : Der Beliebtheitsunterschied zwischen Apache und Nginx verringert sich sehr schnell. In diesem Faktor liegen Apache und Nginx gleichauf.
2. Geschwindigkeit
Das Hauptmerkmal eines guten Webservers ist, dass er schnell läuft und problemlos Verbindungen und Datenverkehr von überall aus bewältigen kann. Um die Servergeschwindigkeit zu messen, wurden in dem Artikel zwei beliebte Reise-Websites verglichen, die auf Apache (Expedia.com) und Nginx (Booking.com) basieren. Mit einem Online-Tool namens Bitcatcha wurden Vergleiche mit mehreren Servern durchgeführt und anhand des 200+-ms-Benchmarks von Google gemessen. Booking.com basierend auf Nginx wird als „außergewöhnlich schnell“ bewertet. Im Gegensatz dazu wurde das auf Apache basierende Expedia.com als „überdurchschnittlich und verbesserungswürdig“ bewertet.
Wenn Sie diese beiden Reiseseiten mehrmals verwendet haben, können Sie bestätigen, dass Expedia bei der Rückgabe von Abfrageergebnissen etwas langsamer ist als Booking.
Unten finden Sie einen Vergleich zwischen den beiden Hosts für einige andere Websites. Nginx ist in den meisten der folgenden Fälle schneller, mit einer Ausnahme.
Fazit : Nginx gewinnt diese Runde.
3. Sicherheit
Sowohl Nginx als auch Apache nehmen die Sicherheit ihrer Websites sehr ernst. Kein robustes System ist vollständig ohne Gegenmaßnahmen gegen DDoS-Angriffe , Malware und Phishing . Beide Server veröffentlichen regelmäßig Sicherheitsberichte und -empfehlungen, um sicherzustellen, dass der Sicherheitsaspekt auf allen Ebenen verbessert wird.
Fazit : Nginx und Apache liegen in dieser Runde erneut unentschieden.
4. Gleichzeitige Verbindungen
Zu beachten ist, dass Apache in mancher Hinsicht nicht mit der Größe und den Fähigkeiten von Nginx mithalten kann. Schließlich wurde Nginx ursprünglich entwickelt, um FastCGI- und SCGI-Handler zu beschleunigen. Ab Apache 2.4 (der Standardversion) gab es jedoch eine drastische Verbesserung bei der Anzahl gleichzeitiger Verbindungen. Es lohnt sich zu untersuchen, wie weit diese Verbesserung fortgeschritten ist.
Basierend auf Tests bei Loadimpact.com vergleicht der Artikel erneut Booking.com (Nginx) mit Expedia.com (Apache). Für 25 virtuelle Benutzer kann die Nginx-Site 200 Anfragen pro Sekunde protokollieren, was 2,5-mal mehr ist als Apache (80 Anfragen pro Sekunde). Wenn Sie eine dedizierte Website mit hohem Datenverkehr haben, ist Nginx natürlich die sicherere Wahl.
Fazit : Nginx gewinnt diese Runde.
5. Flexibilität
Ein Webhost muss flexibel genug sein, um Anpassungen zu ermöglichen. Apache macht das recht gut, durch die Verwendung von .htaccess-Tools, die Nginx nicht unterstützt. Es ermöglicht die Dezentralisierung von Verwaltungsaufgaben. Drittadministratoren und Administratoren der zweiten Ebene können möglicherweise daran gehindert werden, auf den Hauptserver zuzugreifen. Darüber hinaus unterstützt Apache mehr als 60 Module und ist somit hoch skalierbar. Aus diesem Grund ist Apache bei Shared-Hosting-Anbietern beliebter.
Fazit : Apache gewinnt diese Runde.
Andere Parameter
Bisher bot Nginx im Gegensatz zu Apache keine sehr gute Unterstützung für Windows-Betriebssysteme. Dies ist jedoch nicht mehr der Fall. Darüber hinaus galt Apache auch in Bezug auf Lastausgleich und Reserve-Proxy als recht schwach . Aber jetzt hat sich alles geändert!
Endergebnis
Nginx gewann knapp mit 2:1. Vor diesem Hintergrund ergibt ein objektiver Vergleich zwischen Nginx und Apache hinsichtlich der technischen Spezifikationen ein vollständiges Bild. Die abschließende Schlussfolgerung ist, dass beide Webhoster auf ihre eigene Weise nützlich sind.
Während Apache mit einem Front-End-Server verwendet werden sollte (für den Nginx selbst eine Option ist), kann Nginx mit mehr Anpassung und Flexibilität besser sein.