Nachdem ich mit mehreren Webservern online gespielt habe, habe ich Dinge wie goDaddy gesehen, die gzip standardmäßig nicht aktivieren. Gleiches gilt für einige IIS-Drops, Standardinstallationen von Apache usw.
Ich laufe weiterhin auf Servern, auf denen es keine grundlegenden Dinge gibt, die die Geschwindigkeit Ihrer Website verbessern.
Dies führt mich zu zwei Optionen: Jeder, der Webserves-Pakete schlecht erstellt, oder ich verstehe einfach nicht, warum er dies getan hat. Es ist viel wahrscheinlicher, dass ich nicht weiß, warum sie das nicht tun.
Könnte mich jemand aufklären, warum Sie Webserver mit deaktivierten Funktionen wie gzip und verschiedenen Cache-Steuerungs-Headern versenden würden?
Ich dachte, schnellere Websites wären das Ergebnis davon, wie mir ySlow und PageSpeed ständig sagen. Was sind die Nachteile?
quelle
Antworten:
"Ressourcen" - RAM und CPU sind erforderlich, um Ihre Inhalte im laufenden Betrieb zu komprimieren ... ein wenig, aber Ressourcen auf ein oder zwei Websites sind trivial, aber auf 1000 oder mehr ... kann es unkonventionell werden. Außerdem - der Kommentar von Falcon ist gültig - möchten Anbieter die ausfallsichere "Bare Bones" -Konfiguration als Standard.
-sean
UPDATE: Ich habe auch vergessen: Die zusätzliche Ausführungszeit bei jeder Anforderung, auch die eigentliche Komprimierung durchzuführen - es gibt den zusätzlichen Speicher, der beim Laden von mod_deflate [deflate_module] verwendet wird, sodass im Allgemeinen jeder Prozess etwas dicker und ein wenig wird etwas langsamer. ~ wie ich schon sagte, im Allgemeinen trivial, aber wenn Sie zunächst auf Ressourcen angewiesen sind ...
quelle
Ein Grund könnte die IE6-Kompatibilität sein. IE6 unterstützt zwar gzip, jedoch nur bis zu einer komprimierten Größe von 65535 Byte.
Wenn Ihre Seite größer ist, wird der Rest ohne Erklärung abgeschnitten. Aber hier ist der lustige Teil: Es passiert nur, wenn die Seite aus dem Datei-Cache geladen wurde, nicht, wenn sie über das Netzwerk empfangen wurde, was das Debuggen des gesamten Chaos schwierig macht.
Es kann umgangen werden, indem die Header der Anforderung verarbeitet werden. Manchmal gibt es jedoch einen transparenten Proxy mit IE6, z. Virensoftware. Der Proxy ändert keinen User-Agent-Header, sodass Sie ziemlich viel Pech haben. Gut, dass IE6 fast ausgerottet ist.
Ich bin mir nicht sicher, ob alle Versionen betroffen waren oder nur einige, aber das oben Genannte war der Grund, warum die Website, für die ich arbeite, für lange Zeit gzip deaktiviert hatte.
quelle
Möglicherweise liegt dies daran, dass GZip nicht von jedem Browser unterstützt wird. Diese Erklärung ist falsch: Ein Server kann basierend auf dem
Accept-Encoding
Header der Anforderung abwärtskompatibel sein. Dies gibt an, ob der Browser GZip-komprimierten Inhalt akzeptieren kann.Eine mögliche Erklärung ist, dass nicht alles komprimiert werden muss. Warum sollten Sie eine ZIP-Datei oder ein JPEG-Bild komprimieren? Bestenfalls wird die Größe gleich sein. Im schlimmsten Fall wird es größer.
Ein weiterer Faktor ist die serverseitige Leistung. Es ist besser, den Entwickler die Komprimierung aktivieren zu lassen, wenn dieser Entwickler die Auswirkungen auf die CPU und die Vor- und Nachteile von ZGip für einen bestimmten Inhalt kennt.
quelle
Ich denke, es ist aus Kompatibilitätsgründen. Einige Clients können es nicht dekomprimieren und in einigen seltenen Fällen kann es die serverseitige Funktionalität beeinträchtigen. Die Anbieter möchten wahrscheinlich eine ausfallsichere Standardkonfiguration.
quelle
Accept-Encoding:gzip,deflate,sdch
, was bedeutet, dass der Server nur dann GZip-Inhalte kann, wenn diese unterstützt werden und kompatibel bleiben.Je weniger Anweisungen ein Webserver ausführen muss, desto mehr Anforderungen können bearbeitet werden.
Für die Ausführung der gzip-Komprimierung sind Anweisungen erforderlich, sodass sie verlangsamt wird. Wenn Sie es möchten, können Sie es einschalten.
quelle
Meine Antwort mag albern und kontrovers sein, aber können Sie sich vorstellen, wie viel Umsatz Unternehmen wie Amazon vermissen werden, wenn die HTTP-Komprimierung standardmäßig aktiviert ist? Der Datenverkehr ist ein wesentlicher Bestandteil der monatlichen Rechnung, und all diese erholsamen APIs transportieren Tonnen von Daten.
quelle