Performances et surveillance

Désactiver la compression Gzip et Brotli depuis le .htaccess

Vérifié le 3 min de lecture Gzip compression

Nos serveurs compressent automatiquement le HTML, le CSS et le JavaScript avec Gzip ou Brotli. Si une application ou un script ne fonctionne pas bien avec la réponse compressée (par exemple parce qu'il compresse déjà lui-même, ou parce qu'il envoie des données en streaming), vous pouvez désactiver la compression depuis le .htaccess. Le changement s'applique instantanément, sans rien redémarrer.

La désactiver

Ajoutez au début du fichier .htaccess :

SetEnv no-gzip 1
SetEnv no-brotli 1

La première ligne désactive Gzip et la seconde Brotli. Mettez les deux : si vous ne désactivez que Gzip, les navigateurs récents continueront de recevoir du Brotli.

Si vous préférez utiliser des règles de réécriture, l'alternative pour Gzip est :

RewriteEngine On
RewriteRule . - [E=no-gzip:1]

SetEnv est l'option recommandée par LiteSpeed, car d'autres règles RewriteRule du fichier (celles de WordPress, par exemple) peuvent empêcher la règle de réécriture de s'appliquer.

Choisir où la placer

Le .htaccess s'applique à son répertoire et à tous ceux qui se trouvent en dessous :

  • Dans public_html/.htaccess, la compression est désactivée pour le domaine principal et pour les domaines supplémentaires et sous-domaines dont les dossiers se trouvent dans public_html.
  • Pour la limiter à un seul site ou à un dossier (par exemple celui d'une API), placez-la dans le .htaccess de ce dossier.

Vérifier qu'elle est désactivée

  1. Ouvrez le site dans une fenêtre privée, appuyez sur F12 et allez dans l'onglet Réseau (Network).
  2. Rechargez avec Ctrl + F5 (ou Cmd + Maj + R sur Mac) pour ne pas voir la copie enregistrée par le navigateur.
  3. Cliquez sur la requête du document ou du fichier qui vous intéresse et regardez les en-têtes de réponse : Content-Encoding: gzip et Content-Encoding: br ne doivent plus apparaître.

Depuis le terminal, vous pouvez aussi le vérifier avec :

curl -s -o /dev/null -D - -H "Accept-Encoding: gzip, br" https://tudominio.com/ | grep -i content-encoding

Si la commande ne renvoie rien, la réponse n'est pas compressée.

Si elle apparaît toujours compressée, cela peut venir :

  • D'un CDN comme Cloudflare : il compresse lui-même ce qu'il distribue au visiteur. Désactivez la compression dans le CDN ou faites la vérification directement auprès du serveur.
  • De l'application elle-même : si le code PHP utilise ob_gzhandler ou zlib.output_compression, cette compression n'est pas contrôlée par le serveur. Retirez-la du code ou mettez zlib.output_compression = Off dans la configuration PHP du site.

La réactiver

Supprimez les lignes ajoutées et enregistrez. La compression fonctionne de nouveau immédiatement. La garder active réduit fortement la taille des pages : ne la désactivez que là où c'est nécessaire.

Cela peut aussi vous aider

Quelque chose cloche ou a changé ? Racontez-nous et nous le vérifions.