Informationen zur Nginx-GZIP-Konfiguration

Informationen zur Nginx-GZIP-Konfiguration

Das Prinzip von nginx zur Erzielung einer Ressourcenkomprimierung besteht darin, Anforderungen über das Modul ngx_http_gzip_module abzufangen und eine GZIP-Komprimierung für die Typen durchzuführen, die GZIP benötigen. Dieses Modul ist die Standardbasis und muss nicht neu kompiliert werden. Sie können es direkt aktivieren.

Grundkonfiguration

# gzipgzip aktivieren;
 
# Aktivieren Sie die Mindestdateigröße für die GZIP-Komprimierung. Dateien, die kleiner als der festgelegte Wert sind, werden nicht komprimiert. gzip_min_length 1k;
 
# gzip-Komprimierungsstufe, 1-9, je höher die Zahl, desto besser die Komprimierung, aber desto mehr CPU-Zeit wird benötigt, eine detaillierte Beschreibung folgt später gzip_comp_level 1;
 
# Die zu komprimierenden Dateitypen. JavaScript gibt es in vielen Formen. Die Werte sind in der Datei mime.types zu finden. gzip_types Text/Plain-Anwendung/Javascript-Anwendung/x-Javascript-Text/CSS-Anwendung/Xml-Text/Javascript-Anwendung/x-httpd-php-Bild/JPEG-Bild/GIF-Bild/PNG-Anwendung/vnd.ms-Fontobject Schriftart/TTF-Schriftart/OpenType-Schriftart/x-Woff-Bild/SVG+XML;
 
# Ob Vary: Accept-Encoding im HTTP-Header hinzugefügt werden soll. Es wird empfohlen, gzip_vary einzuschalten;
 
# IE 6 deaktivieren gzipgzip_disable "MSIE [1-6]\\.";
 
# Stellen Sie die für die Komprimierung erforderliche Puffergröße ein gzip_buffers 32 4k;
 
# Legen Sie die HTTP-Protokollversion für die GZIP-Komprimierung fest. Sie kann ignoriert werden, wenn keine Last vorhanden ist. # gzip_http_version 1.0;# Cache-Speicherort aktivieren ~* ^.+\\.(ico|gif|jpg|jpeg|png)$ {
  Zugriff_Abmeldung;
  läuft am 2. Tag ab;
}
 
Standort ~* ^.+\\.(css|js|txt|xml|swf|wav)$ {
  Zugriff_Abmeldung;
  läuft in 24 Stunden ab;
}
 
Standort ~* ^.+\\.(html|htm)$ {
  läuft in 1 Stunde ab;
}
 
Standort ~* ^.+\\.(eot|ttf|otf|woff|svg)$ {
  Zugriff_Abmeldung;
  läuft maximal ab;
}
 
# Format # läuft nach 30 s ab; # läuft nach 30 m ab; # läuft nach 2 h ab; # läuft nach 30 d ab;

Erkennungseffekt

1. Die Inhaltskodierung in den Antwortheadern von nginx ist gzip

2. Die zurückgegebene Dateigröße ist offensichtlich komprimiert

Komprimierungsanweisungen gzip auf

Gzip standardmäßig ein- oder ausschalten. Aus. Codeblock http, Server, Standort schließen, wenn am Standort

gzip_puffer

Legt die Anzahl und Größe der Puffer fest, die zur Verarbeitung der Anforderungskomprimierung verwendet werden. Beispielsweise bedeutet 32 4 K, dass basierend auf der Größe einer Speicherseite in 4-K-Einheiten (d. h. die Speicherseite in einem System ist 4 K groß) der 32-fache Speicherplatz beantragt wird. Es wird empfohlen, diese Option nicht festzulegen und den Standardwert zu verwenden.

Syntax: gzip_buffers Zahlengröße;
Standard:
gzip_puffer 32 4k|16 8k;
Kontext: http, Server, Standort

gzip_comp_level

Legen Sie die Komprimierungsstufe für GZIP fest. Je niedriger die Stufe, desto schneller die Komprimierungsgeschwindigkeit und desto geringer die Dateikomprimierungsrate. Umgekehrt gilt: Je langsamer die Geschwindigkeit, desto höher die Dateikomprimierungsrate.

Syntax: gzip_comp_level level;Standard:
gzip_comp_level 1;Kontext: http, Server, Standort

Es ist nicht so, dass je höher die Komprimierungsstufe, desto besser. Tatsächlich ist die Komprimierungsleistung von gzip_comp_level 1 ausreichend. Je höher die Stufe, desto geringer ist die Verbesserung der Komprimierungsrate. Stattdessen wird die Verarbeitungsleistung erheblich reduziert.
Andererseits muss die Komprimierung mit dem Zwischenspeichern statischer Ressourcen kombiniert werden, um die komprimierte Version zwischenzuspeichern. Andernfalls kann der Server die hohe Last nicht bewältigen, wenn jedes Mal eine Komprimierung durchgeführt wird.

gzip_deaktivieren

Verwenden Sie einen Ausdruck, um anzugeben, welche UA-Header nicht mit gzip komprimiert werden sollen.

Syntax: gzip_disable regex ...;
Standard: -
Kontext: http, Server, Standort. Diese Anweisung erschien in Version 0.6.23.

gzip_min_länge

Die Gzip-Komprimierung wird nur verwendet, wenn der zurückgegebene Inhalt größer als dieser Wert in K ist. Wenn der Wert 0 ist, werden alle Seiten komprimiert.

Syntax: gzip_min_length Länge;Standard:
gzip_min_length 20;Kontext: http, Server, Standort

gzip_http_version

Wird verwendet, um die Version des HTTP-Protokolls zu identifizieren. Ältere Browser unterstützen keine GZIP-Komprimierung und Benutzer sehen verstümmelte Zeichen. Daher wurde diese Option hinzugefügt, um ältere Versionen zu unterstützen. Standardmäßig ist die GZIP-Komprimierung unter dem http/1.0-Protokoll nicht aktiviert.

Syntax: gzip_http_version 1.0 | 1.1;
Standard:
gzip_http_version 1.1;
Kontext: http, Server, Standort

Wenn sich vor dem Anwendungsserver ein weiterer Nginx-Cluster als Lastausgleichsschicht befindet, ist gzip auf dieser Schicht nicht aktiviert.
Wenn wir proxy_pass für den Reverse-Proxy verwenden, wird standardmäßig das HTTP/1.0-Protokoll für die Kommunikation zwischen nginx und dem Backend-Upstreamserver verwendet.
Wenn unser Cache-Server auch Nginx ist und das Front-End Nginx Gzip nicht aktiviert hat.
Wenn gzip_http_version auf unserem Backend nginx nicht auf 1.0 gesetzt ist, wird die zwischengespeicherte URL gleichzeitig nicht mit GZIP komprimiert.

gzip_proxied

Wenn Nginx als Reverse-Proxy verwendet wird, aktivieren Sie:

1.off – deaktiviert die Komprimierung aller Proxy-Ergebnisdaten. 2. expired – aktiviert die Komprimierung, wenn der Header den Header „Expires“ enthält. 3.no-cache – aktiviert die Komprimierung, wenn der Header den Header „Cache-Control: no-cache“ enthält. 4.no-store – aktiviert die Komprimierung, wenn der Header den Header „Cache-Control: no-store“ enthält. 5. private – aktiviert die Komprimierung, wenn der Header den Header „Cache-Control: private“ enthält. 6. no_last_modified – aktiviert die Komprimierung, wenn der Header den Header „Last_Modified“ enthält. 7. no_etag – aktiviert die Komprimierung, wenn der Header den Header „ETag“ enthält. 8. auth – aktiviert die Komprimierung, wenn der Header den Header „Authorization“ enthält. 9.any – komprimiert alle Ergebnisdaten bedingungslos.
Syntax: gzip_proxied off | abgelaufen | kein Cache | kein Store | privat | no_last_modified | no_etag | Auth | beliebig …;
Standard:
gzip_proxied aus;
Kontext: http, Server, Standort

gzip_typen

Legen Sie den MIME-Typ fest, der komprimiert werden muss. Anforderungen, die nicht im festgelegten Typbereich liegen, werden nicht komprimiert.

Syntax: gzip_types MIME-Typ ...;
Standard:
gzip_typestext/html;
Kontext: http, Server, Standort

gzip_vary

Durch das Hinzufügen des Antwortheaders „Vary: Accept-Encoding“ wird dem Empfänger mitgeteilt, dass die gesendeten Daten komprimiert wurden. Wenn Sie diese Option aktivieren, wird dem Antwortheader Accept-Encoding:gzip hinzugefügt. Dies ist für Clientbrowser nützlich, die keine GZIP-Komprimierung unterstützen.

Syntax: gzip_varyon |off;
Standard:
gzip_varyoff;
Kontext: http, Server, Standort

Dies ist das Ende dieses Artikels zum Aktivieren von gzip in Nginx. Weitere Informationen zum Aktivieren von gzip in Nginx finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Aktivierungs- und Konfigurationsanweisungen für das Nginx Gzip-Modul
  • So aktivieren Sie die GZIP-Komprimierungsfunktion auf der Serverseite (Apache, IIS, Nginx)
  • Führen Sie die Schritte zum Aktivieren der GZIP-Komprimierung in Nginx aus.
  • Nginx verwendet den Gzip-Algorithmus zum Komprimieren von Nachrichten
  • Zusammenfassung zur Verwendung des Nginx-Befehls gzip

<<:  Warum MySQL die Verwendung von Unterabfragen und Verknüpfungen nicht empfiehlt

>>:  Der DOCTYPE-Modusauswahlmechanismus bekannter Browser

Artikel empfehlen

Verwendung von Vue-Filtern und benutzerdefinierten Anweisungen

Inhaltsverzeichnis Filter 01.Was ist 02. Wie es g...

Methoden und Probleme zum Festlegen des HTML-Zeilenabstands

Um den Zeilenabstand von <p></p> festz...

Zusammenfassung häufig verwendeter Escape-Zeichen in HTML

Die in HTML häufig verwendeten Escape-Zeichen wer...

MySQL-Tutorial: Ausführliche Erklärung zum Unterabfragebeispiel

Inhaltsverzeichnis 1. Was ist eine Unterabfrage? ...

Öffentliche kostenlose STUN-Server

Öffentliche kostenlose STUN-Server Wenn das SIP-T...

Beispiel für die Implementierung der Hochverfügbarkeit von Keepalived+Nginx

1. Einführung in Keepalived Keepalived wurde ursp...

So deklarieren Sie einen Cursor in MySQL

So deklarieren Sie einen Cursor in MySQL: 1. Vari...

W3C Tutorial (13): W3C WSDL Aktivitäten

Bei Webdiensten geht es um die Kommunikation zwis...

Vue+Websocket implementiert einfach die Chat-Funktion

In diesem Artikel wird der spezifische Code von V...

Eine kurze Diskussion über das Funktionswissen von Python

Inhaltsverzeichnis Zwei Hauptkategorien von Funkt...