Zum Inhalt

unzstd: Dekomprimiert Zstd-kodierte Antworten für Clients, die dies nicht unterstützen

Installation

Sie können dieses Modul in jeder RHEL-basierten Distribution installieren, einschließlich, aber nicht beschränkt auf:

  • RedHat Enterprise Linux 7, 8, 9 und 10
  • CentOS 7, 8, 9
  • AlmaLinux 8, 9
  • Rocky Linux 8, 9
  • Amazon Linux 2 und Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-unzstd
yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install nginx-module-unzstd

Aktivieren Sie das Modul, indem Sie Folgendes am Anfang von /etc/nginx/nginx.conf hinzufügen:

load_module modules/ngx_http_unzstd_filter_module.so;

Dieses Dokument beschreibt nginx-module-unzstd v0.2.0, veröffentlicht am 02. September 2026.


server {
    listen 127.0.0.1:8080;
    server_name localhost;

    location / {
        # Zstd-Dekomprimierung für Clients aktivieren, die Zstd-Komprimierung nicht unterstützen
        unzstd on;

        proxy_pass http://foo.com;
    }
}

Direktiven

unzstd

Syntax: unzstd on | off;

Standard: unzstd off;

Kontext: http, server, location, when

Aktiviert oder deaktiviert die Dekomprimierung von Zstd-komprimierten Antworten für Clients, die keine Zstd-Unterstützung haben. Wenn mit ngx_condition_module erstellt, kann diese Direktive auch innerhalb eines when-Blocks konfiguriert werden.

unzstd_force

Syntax: unzstd_force on | off;

Standard: unzstd_force off;

Kontext: http, server, location, when

Wenn aktiviert, dekomprimiert Zstd-Antworten ohne zu prüfen, ob der Client Zstd akzeptiert. Antworten ohne Content-Encoding: zstd sind nicht betroffen. Wenn mit ngx_condition_module erstellt, kann diese Direktive auch innerhalb eines when-Blocks konfiguriert werden.

unzstd_buffers

Syntax: unzstd_buffers number size;

Standard: unzstd_buffers 32 4k | 16 8k;

Kontext: http, server, location

Legt die Anzahl und Größe der Puffer fest, die zum Dekomprimieren einer Antwort verwendet werden. Standardmäßig entspricht die Puffergröße einer Speicherseite. Dies ist entweder 4K oder 8K, abhängig von der Plattform.

Testen

Die schnelle Testsuite baut ein echtes dynamisches Modul und führt es mit der offiziellen nginx-tests-Testumgebung von nginx.org aus:

make tests

Das Release-Gate umfasst außerdem statische ASan/UBSan-Ausführung, erschöpfende cppcheck-Prüfungen, CodeQL, Laden umbenannter Module, nginx -t und nginx -T, feindselige Client-Probes, Reload- und Worker-Ersetzungsprüfungen, konsolidierte Dateideskriptor- Buchhaltung sowie Schema-v1-Torture-Lab-Nachweise:

make lint
make tests-asan
make runtime

GitHub

Weitere Konfigurationstipps und Dokumentationen für dieses Modul finden Sie im GitHub- Repository für nginx-module-unzstd.