Voyez-vous le message « Specify a Vary Accept-Encoding Header » dans Pingdom, GTmetrix, ou Google PageSpeed Insights sur votre site WordPress ? Il s’agit d’un en-tête HTTP qui doit être inclus dans chaque réponse du serveur d’origine, car il indique au navigateur si le client peut ou non gérer les versions compressées du contenu.

Par exemple, disons que vous avez un vieux navigateur sans compression gzip et un navigateur moderne avec lui. Si vous n’utilisez pas l’en-tête Vary: Accept-Encoding, votre serveur Web ou CDN peut mettre en cache la version non compressée et la transmettre par erreur au navigateur moderne, ce qui nuit à la performance de votre site WordPress. En utilisant l’en-tête Vary: Accept-Encoding, vous pouvez vous assurer que votre serveur Web et/ou CDN fournit la version appropriée.

Selon l’outil ou le logiciel qui le signale, l’avertissement peut apparaître de deux façons différentes :

  • « Specify a Vary: Accept-Encoding Header »
  • The following publicly cacheable, compressible resources should have a « vary: accept-encoding » header
Avertissement Specify a Vary: Accept-Encoding Header dans Pingdom
Avertissement Specify a Vary: Accept-Encoding Header dans Pingdom

Suivez les étapes ci-dessous pour corriger l’avertissement « Specify a Vary: Accept-Encoding Header ».

Correction de l’avertissement  » Specify a Vary: Accept-Encoding Header »

La première chose qu’il est important de noter à propos de cet avertissement est que vous ne pouvez le corriger que pour les requêtes qui sont sur votre serveur. Si vous avez des requêtes de tierces parties sur lesquelles vous voyez cela, il n’y a rien que vous puissiez faire car vous n’avez pas de contrôle sur leurs serveurs web. Ainsi, n’hésitez pas à partager cet article avec eux. L’en-tête Vary: Accept-Encoding est ajouté par défaut sur tous les serveurs Kinsta (comme indiqué ci-dessous), donc si vous êtes un client Kinsta, vous ne verrez jamais cet avertissement et n’aurez pas à vous inquiéter.

vary: accept-encoding header kinsta
En-tête Vary: Accept-Encoding sur les serveurs Kinsta

L’en-tête s’applique à la fois à vos ressources WordPress et à votre requête serveur d’origine. Pour vos ressources, si vous utilisez un CDN, beaucoup ajoutent déjà Vary: Accept-Encoding par défaut. KeyCDN, Cloudflare et CloudFront utilisent tous cela. Un grand nombre de plugins de cache WordPress ajoutent également ceci.

Si vous avez encore besoin de corriger cela, vous devrez ajouter du code à votre serveur.

Correction de l’avertissement « Specify a Vary: Accept-Encoding Header » dans Apache

Pour corriger cela dans Apache, ajoutez le code suivant à votre fichier .htaccess via FTP. Ce fichier se trouve à la racine de votre serveur. Vous pouvez également éditer votre fichier .htaccess avec le plugin Yoast SEO si vos permissions sont correctement définies.

Important ! L’édition de votre fichier .htaccess pourrait casser votre site si ce n’est pas fait correctement. Si vous n’êtes pas à l’aise de le faire, veuillez d’abord vérifier auprès de votre hébergeur.
<IfModule mod_headers.c>
  <FilesMatch ".(js|css|xml|gz|html)$">
    Header append Vary: Accept-Encoding
  </FilesMatch>
</IfModule>

Correction de l’avertissement  » Specify a Vary: Accept-Encoding Header » dans NGINX

Pour corriger cela dans NGINX, ajoutez le code suivant à votre fichier de configuration. Tous les fichiers de configuration NGINX se trouvent dans le répertoire /etc/nginx/. Le fichier de configuration principal est /etc/nginx/nginx/nginx.conf.

gzip_vary on

Utiliser l’en-tête Vary: Accept-Encoding peut en fait aider à accélérer votre site WordPress car cela vous assurera que vous utilisez la compression gzip. Et si tout se passe bien, et que vous n’avez pas de requêtes de tiers qui n’utilisent pas correctement l’en-tête, vous devriez voir une amélioration sur votre score avec des outils de test de vitesse de site web tels que Pingdom (comme vu ci-dessous).

Correction de l’avertissent Accept-Encoding header
Correction de l’avertissent Specify a Vary: Accept-Encoding header