Activer la compression de texte

Les ressources textuelles doivent être diffusées sous forme compressée afin de minimiser le nombre total d'octets réseau. La section "Opportunités" de votre rapport Lighthouse liste toutes les ressources textuelles qui ne sont pas compressées :

Capture d'écran de l'audit "Activer la compression de texte" de Lighthouse

Comment Lighthouse gère la compression de texte

Lighthouse collecte toutes les réponses:

  • avoir des types de ressources basés sur du texte ;
  • N'incluez pas d'en-tête content-encoding défini sur br, gzip ou deflate.

Lighthouse compresse ensuite chacune d'elles avec GZIP pour calculer les économies potentielles.

Si la taille d'origine d'une réponse est inférieure à 1,4 Kio, ou si l'économie potentielle de compression est inférieure à 10% de la taille d'origine, Lighthouse ne signale pas cette réponse dans les résultats.

Activer la compression de texte sur votre serveur

Activez la compression de texte sur le ou les serveurs qui ont diffusé ces réponses pour réussir cet audit.

Lorsqu'un navigateur demande une ressource, il utilise l'en-tête de requête HTTP Accept-Encoding pour indiquer les algorithmes de compression qu'il prend en charge.

Accept-Encoding: gzip, compress, br

Si le navigateur est compatible avec Brotli (br), vous devez utiliser Brotli, car il peut réduire la taille de fichier des ressources davantage que les autres algorithmes de compression. Recherchez how to enable Brotli compression in <X>, où <X> est le nom de votre serveur. Depuis décembre 2022, Brotli est compatible avec tous les principaux navigateurs, à l'exception de Safari sur iOS. Pour en savoir plus, consultez la section Compatibilité avec les navigateurs.

Utilisez GZIP comme solution de remplacement pour Brotli. GZIP est compatible avec tous les principaux navigateurs, mais est moins efficace que Brotli. Pour obtenir des exemples, consultez Configurations de serveur.

Votre serveur doit renvoyer l'en-tête de réponse HTTP Content-Encoding pour indiquer l'algorithme de compression utilisé.

Content-Encoding: br

Vérifier la compression de la réponse

Pour vérifier si un serveur a compressé une réponse :

Appuyez sur Control+Shift+J (ou Command+Option+J sur Mac) pour ouvrir DevTools. Cliquez sur l'onglet Réseau .

  1. Appuyez sur Ctrl+Maj+J (ou Cmd+Option+J sur Mac) pour ouvrir les outils de développement.
  2. Cliquez sur l'onglet Réseau.
  3. Cliquez sur la requête à l'origine de la réponse qui vous intéresse.
  4. Cliquez sur l'onglet En-têtes.
  5. Vérifiez l'en-tête content-encoding dans la section En-têtes de réponse.
En-tête de réponse Content-Encoding
En-tête de réponse content-encoding.

Pour comparer les tailles compressée et décompressée d'une réponse :

  1. Appuyez sur Ctrl+Maj+J (ou Cmd+Option+J sur Mac) pour ouvrir les outils de développement.
  2. Cliquez sur l'onglet Réseau.
  3. Activez les lignes de requêtes larges. Consultez Utiliser les lignes de requêtes larges.
  4. Recherchez la réponse qui vous intéresse dans la colonne Taille. La valeur supérieure correspond à la taille compressée. La valeur du bas correspond à la taille décompressée.

Consultez également la section Minifier et compresser les charges utiles réseau.

Conseils spécifiques aux piles

  • Drupal: les ressources textuelles doivent être diffusées sous forme de compression (gzip, deflate ou brotli) afin de réduire le nombre total d'octets sur le réseau. Envisagez d'utiliser un CDN compatible avec cette fonctionnalité en natif ou de configurer le serveur Web pour qu'il effectue cette opération. En savoir plus
  • Joomla: activez le paramètre de compression des pages avec Gzip (Système > Configuration globale > Serveur).
  • WordPress: activez la compression de texte dans la configuration de votre serveur Web.

Ressources