Heim >Betrieb und Instandhaltung >Nginx >So aktivieren Sie den Brotli-Komprimierungsalgorithmus für Nginx
Was ist der Brotli-Komprimierungsalgorithmus?
brotli wurde ursprünglich im Jahr 2015 für die Offline-Komprimierung von Web-Schriftarten veröffentlicht. Die Softwareentwickler von Google haben im September 2015 eine erweiterte Version von Brotli veröffentlicht, die eine allgemeine verlustfreie Datenkomprimierung umfasst, mit besonderem Schwerpunkt auf der HTTP-Komprimierung. Der Encoder wurde teilweise neu geschrieben, um das Komprimierungsverhältnis zu verbessern, sowohl die Geschwindigkeit des Encoders als auch des Decoders wurde erhöht und die Streaming-API wurde verbessert, um mehr Komprimierungsqualitätsstufen hinzuzufügen. Die neue Version bietet außerdem plattformübergreifende Leistungsverbesserungen und einen geringeren Speicherbedarf für die Dekodierung.
Im Gegensatz zu gängigen Allzweck-Komprimierungsalgorithmen verwendet Brotli ein vordefiniertes 120-Kilobyte-Wörterbuch. Das Wörterbuch enthält über 13.000 gebräuchliche Wörter, Phrasen und andere Teilzeichenfolgen, die aus einem großen Korpus von Text- und HTML-Dokumenten stammen. Vordefinierte Algorithmen erhöhen die Komprimierungsdichte für kleinere Dateien.
Durch die Verwendung von Brotli anstelle von Deflate zum Komprimieren von Textdateien kann die Komprimierungsdichte normalerweise um 20 % erhöht werden, während die Komprimierungs- und Dekomprimierungsgeschwindigkeiten ungefähr gleich bleiben. Als Inhaltskodierungstyp für die Stream-Komprimierung mit Brotli wurde die Verwendung von „br“ vorgeschlagen.
Installation
1. Laden Sie brotli herunter
git clone https://github.com/google/ngx_brotli cd ngx_brotli && git submodule update --init
2. Kompilieren Sie –add-module=/opt/nginx/ngx_brotli nach der ursprünglichen Kompilierungskonfiguration
Kopieren Sie den Code folgt:
./configure --prefix=/usr/local/nginx --user=www --group=www --with-pcre=/opt/nginx/pcre-8.41 --with-http_ssl_module --with- zlib=/opt /nginx/zlib-1.2.11 --with-openssl=/opt/nginx/openssl-1.0.2n --add-module=/opt/nginx/ngx_brotli --with-http_v2_module
Konfiguration, hinzufügen
im http-Bereichhttp { include mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; keepalive_timeout 65; #brotli compression brotli on; brotli_comp_level 6; brotli_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml; ……
Starten Sie neu, aktualisieren Sie die Seite, um die Kopfzeile anzuzeigen, und suchen Sie
accept-encoding:gzip, deflate, br
wie im Bild gezeigt
, was bedeutet, dass die Brotli-Komprimierung aktiviert istKonfigurationsanweisungen
Befehlseinführung
Der folgende Befehl ist definiert:
brotli on;brotli_types, wenn die dynamische Komprimierung aktiviert ist, sind komprimierte Mime-Typen zulässig und der Standardwert ist text/html. Ein Beispiel lautet wie folgt:
brotli_types text/plain text/css text/xml application/xml application/json text/javascript application/javascript application/x-javascript;brotli_static, ob die Suche nach vorverarbeiteten komprimierten Dateien mit der Endung .br zugelassen werden soll, die optionalen Werte sind „on“, „off“ und „immer“ und der Standardwert ist „off“. Das Beispiel lautet wie folgt:
brotli_static off;brotli_comp_level, Komprimierungsstufe, der optionale Wertebereich liegt zwischen 0 und 11 und der Standardwert ist 6. Ein Beispiel lautet wie folgt:
brotli_comp_level 11;brotli_buffers, die Anzahl und Größe der Puffer, die beim Komprimieren von Antwortdaten verwendet werden. Das Beispiel lautet wie folgt:
brotli_buffers 16 8k;brotli_window, der von brotli verwendete Fensterwert, der Standardwert ist 512 KB. Ein Beispiel lautet wie folgt:
brotli_window 512k;brotli_min_length, die Mindestlänge der Antwortdaten, unterhalb derer der Brotli-Algorithmus nicht zur Durchführung von Komprimierungsvorgängen verwendet wird. Der Brotli-Algorithmus verwendet die Inhaltslänge, um die Länge der Antwortdaten zu bestimmen. Ein Beispiel ist wie folgt:
brotli_min_length 20;
Das obige ist der detaillierte Inhalt vonSo aktivieren Sie den Brotli-Komprimierungsalgorithmus für Nginx. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!