Heim > Artikel > Backend-Entwicklung > HTTP-Protokollanalysereihe (9) ------http-Protokoll und Inhaltskomprimierung
Beachten Sie, dass wir einen Nachrichtenartikel von 163 öffnen und die folgenden entsprechenden Header-Informationen und die folgenden Antwort-Header-Informationen sehen. Beachten Sie, dass Content-Length
Gleichzeitig klicken wir mit der rechten Maustaste, um den Quellcode zu speichern. Die gespeicherte Dateigröße beträgt
Denken: InhaltslängeIn der vorherigen Studie stellte es die zurückgegebene Körperlänge dar
Aber warum stimmt die hier zurückgegebene Körperlänge nicht mit der Inhaltslänge überein?
Der Grund ist, dass Content-Encoding:gzipDiese Antwort-Header-Informationen sind wirksam
Prinzip: Um die zu verbessern Übertragung von Webseiten im Netzwerk Geschwindigkeit, der Server komprimiert die Betreffinformationen. Wie zum Beispiel die übliche gzip-Komprimierung, deflate-Komprimierung, compress-Komprimierung und Google Chrome forciert die sdch-Komprimierung.
Der Komprimierungsprozess ist wie folgt:
Aufgrund der aktuellen Situation hat der Server verarbeitete die Seite. Komprimierte Inhaltslänge ist die Länge nach „Komprimierung“
Wie aktiviere ich die Komprimierung in Apache?
1. Aktivieren Sie das Modul deflate oder das Modul gzip.
2 Schreiben Sie den folgenden Code in die conf-Datei
3. Warum müssen wir den Dateityp für die Komprimierung angeben?
Antwort: Komprimierung verbraucht auch CPURessourcen, Bilder/Filme/ Der Komprimierungseffekt von Videos und anderen Dateien ist ebenfalls nicht gut.
ist im Allgemeinen eine Datei im komprimierten Textformat.
<ifmodule mod_deflate.c> DeflateCompressionLevel 6 AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/atom_xml AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php AddOutputFilterByType DEFLATE image/svg+xml </ifmodule>
F: Woher weiß der Server, dass unser Browser gzip unterstützt?
Antwort: Der Client darf eine accept-Encoding Header-Information senden, um mit dem Server
Sie auszuhandeln Sie können dieses Beispiel sehen. Es gibt drei Arten von ChromeBrowser
Firefox unterstützt nur zwei Komprimierungsmethoden
Tipps: Wenn wir sammeln, brauchen wir nicht um Accept-Encoding-Informationen zu senden, damit der Quellcode direkt erfasst wird. Natürlich können Sie auch gzip erfassen ( zur Verbesserung der Geschwindigkeit). und verwenden Sie dann gzipExtrahieren Sie den Inhalt.
Das Obige stellt die HTTP-Protokollanalysereihe (9) vor – http-Protokoll und Inhaltskomprimierung, einschließlich Aspekten des Inhalts. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.