compression-normalize: Module de normalisation Accept-Encoding de NGINX
Installation
Vous pouvez installer ce module dans toute distribution basée sur RHEL, y compris, mais sans s'y limiter :
- RedHat Enterprise Linux 7, 8, 9 et 10
- CentOS 7, 8, 9
- AlmaLinux 8, 9
- Rocky Linux 8, 9
- Amazon Linux 2 et Amazon Linux 2023
dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install nginx-module-compression-normalize
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-compression-normalize
Activez le module en ajoutant ce qui suit en haut de /etc/nginx/nginx.conf :
load_module modules/ngx_http_compression_normalize_module.so;
Ce document décrit nginx-module-compression-normalize v1.0.0 publié le 06 janvier 2026.
Description
ngx_http_compression_normalize_module est un module NGINX conçu pour analyser, normaliser et gérer les en-têtes Accept-Encoding des requêtes des clients. Il garantit un traitement cohérent des algorithmes de compression en standardisant les valeurs Accept-Encoding, facilitant ainsi une meilleure gestion de la compression et améliorant les performances du cache vary.
Synopsis
http {
compression_normalize_accept_encoding gzip,br,zstd gzip,br zstd br gzip;
server {
listen 80;
server_name example.com;
location / {
# Vos configurations
}
}
}
Directives
compression_normalize_accept_encoding
Syntaxe : compression_normalize_accept_encoding combinations1 [combinations2 ..] | off;
Par défaut : compression_normalize_accept_encoding off;
Contexte : http, server, location
Active la normalisation de l'en-tête Accept-Encoding en spécifiant des combinaisons préférées d'algorithmes de compression. Cette directive accepte une liste de méthodes de compression, permettant de définir l'ordre et la priorité des types d'encodage que le serveur doit privilégier lors de la réponse aux requêtes des clients.
Par exemple, avec la configuration suivante
compression_normalize_accept_encoding gzip,br,zstd gzip,br zstd br gzip;
Si l'en-tête de requête Accept-Encoding contient gzip, br et zstd en même temps, la valeur de l'en-tête Accept-Encoding normalisé est gzip,br,zstd. Si les conditions ci-dessus ne sont pas remplies, mais que l'en-tête de requête contient gzip et br, la valeur de l'en-tête Accept-Encoding normalisé est gzip,br. Et ainsi de suite, jusqu'à ce que toutes les combinaisons données par la directive compression_normalize_accept_encoding soient vérifiées. Si aucune combinaison n'est trouvée à ce moment-là, l'en-tête Accept-Encoding est directement supprimé.
Une valeur de off désactivera cette fonctionnalité.
Variables
\$compression_original_accept_encoding
garde la valeur originale de l'en-tête Accept-Encoding de la requête.
GitHub
Vous pouvez trouver des conseils de configuration supplémentaires et de la documentation pour ce module dans le dépôt GitHub pour nginx-module-compression-normalize.