Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So aktivieren Sie die GZIP-Komprimierung in Apache

So aktivieren Sie die GZIP-Komprimierung in Apache

小云云
小云云Original
2018-03-05 09:50:242062Durchsuche

Gzip ist ein beliebter Dateikomprimierungsalgorithmus, der mittlerweile weit verbreitet ist, insbesondere auf der Linux-Plattform. Gzip wird standardmäßig in modernen Browsern unterstützt. Wenn eine reine Textdatei mit Gzip komprimiert wird, kann die Anzahl der über das Netzwerk übertragenen Bytes erheblich reduziert werden Die Verwendung von Gzip besteht darin, dass die Ladegeschwindigkeit Ihrer Website erhöht und Ihre Website für Suchmaschinen benutzerfreundlicher wird. Im Folgenden erklärt PHP-Programmierer Lei Xuesong ausführlich, wie Apache das Modul mod_deflate verwendet, um die Gzip-Komprimierung von Webinhalten zu implementieren.

Der Prozess der Gzip-Verarbeitung der HTTP-Anfrage des Apache-Servers

1 Nachdem der Apache-Server die HTTP-Anfrage vom Browser empfangen hat, prüft er, ob der Browser die HTTP-Komprimierung unterstützt (Accept-Encoding-Informationen).

2. Wenn der Browser HTTP-Komprimierung unterstützt, prüft der Apache-Server das Suffix der angeforderten Datei.

a. Wenn es sich bei der angeforderten Datei um eine statische Datei wie HTML, CSS, JS, Bilder usw. handelt, prüft der Apache-Server, ob die neueste komprimierte Datei der angeforderten Datei bereits im Komprimierungspufferverzeichnis vorhanden ist . Wenn sie nicht vorhanden ist, geben Sie die komprimierte Datei zurück und speichern Sie sie im Komprimierungspufferverzeichnis. Wenn sie bereits vorhanden ist, geben Sie die komprimierte Datei der angeforderten Datei zurück.
b. Wenn es sich bei der angeforderten Datei um eine dynamische Datei handelt, komprimiert der Webserver den Inhalt dynamisch und gibt ihn an den Browser zurück. Der komprimierte Inhalt wird nicht im Komprimierungs-Cache-Verzeichnis gespeichert.

Apache unterstützt die GZIP-Komprimierungskonfiguration

1. Bearbeiten Sie die http.conf-Datei, aktivieren Sie das mod_deflate-Modul

Entfernen Sie #LoadModule headers_modules/mod_headers. so Der vorherige Kommentar #
Entferne #LoadModule deflate_modulemodules/mod_deflate.so Der vorherige Kommentar #
Entferne #LoadModule filter_modulemodules/mod_filter.so Der vorherige Kommentar #

2. Konfigurieren Sie die Parameter für die Gzip-Komprimierung


<IfModule mod_deflate.c>
#压缩率,6是建议值。
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 image/svg+xml
AddOutputFilterByType DEFLATE image/gif image/png image/jpe image/swf image/jpeg image/bmp
#排除不需要压缩的文件
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-varySetEnvIfNoCase
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
</IfModule>

3. Starten Sie den Apache-Server neu und verwenden Sie eine Browseranfrage, um zu überprüfen, ob Gzip wirksam ist.

Verwandte Empfehlungen:

Mit PHP feststellen, ob der Server die Gzip-Komprimierungsfunktion unterstützt_PHP-Tutorial

Detaillierte Erläuterung der GZIP-Komprimierungsfunktion auf der PHP-zlib-Erweiterungsseite

Apache-GZIP-Komprimierungseinstellungen


Das obige ist der detaillierte Inhalt vonSo aktivieren Sie die GZIP-Komprimierung in Apache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn