Table des matières de l'article :
Si, jusqu'en 2019, nous utilisions avec enthousiasme mod_pagespeed pour Apache et, dans certains cas, ngx_pagespeed pour NGINX, et que nous envisagions même de le recommander (comme dans cet article : « mod_pagespeed et ngx_pagespeed : modules Google pour serveurs web Apache et NGINX afin d'améliorer les performances ») , il est aujourd'hui plus que jamais temps d'annoncer publiquement que, depuis au moins 2020, l'utilisation d'un projet désormais abandonné et obsolète n'a plus aucun sens.
Mais revenons brièvement sur le sujet abordé précédemment en expliquant, quoique cette fois de manière plus approximative, ce qu'est mod_pagespeed et quels étaient les objectifs initiaux souhaités par Google lui-même.
Qu'est-ce que mod_pagespeed ?
mod_pagespeed est un module Apache créé par Google pour améliorer les performances des pages web. Ce module utilise diverses techniques d'optimisation du contenu, telles que la compression d'images et la minification CSS et JavaScript, afin de réduire le temps de chargement des pages.
Google a créé mod_pagespeed pour aider les webmasters à améliorer la vitesse de leurs pages Web. La vitesse de chargement des pages est un facteur important dans l'expérience utilisateur et le classement des moteurs de recherche.
mod_pagespeed a été lancé pour la première fois en 2010 en tant que projet open source et a reçu de nombreuses fonctionnalités au fil des ans. Par exemple, il peut optimiser les images pour réduire leur poids sans compromettre la qualité, générer automatiquement des images réactives pour optimiser l'affichage sur les appareils mobiles et minifier le code CSS et JavaScript pour réduire la quantité de données à télécharger.
En 2018, Google a annoncé qu'il cesserait le développement actif de mod_pagespeed, mais continuerait à assurer le support de la version existante jusqu'en 2021. Après cela, le projet a été officiellement abandonné et Google ne fournit plus aucun support ni mise à jour.
Qu'est-ce que ngx_pagespeed ?
ngx_pagespeed est un port de mod_pagespeed pour le serveur Web NGINX. Il s'agit d'un module qui permet aux administrateurs système d'utiliser les mêmes fonctionnalités d'optimisation des performances que mod_pagespeed sur un serveur NGINX.
Le projet ngx_pagespeed a été créé par un groupe de développeurs indépendants qui souhaitaient porter la fonctionnalité mod_pagespeed sur un serveur Web autre qu'Apache. Le module ngx_pagespeed a été publié pour la première fois en 2012 et a constamment reçu des mises à jour et de nouvelles fonctionnalités au fil des ans.
Comme mod_pagespeed, ngx_pagespeed utilise pratiquement les mêmes techniques pour optimiser les performances des pages Web, telles que la compression d'image, la minification de CSS et JavaScript, et l'optimisation des requêtes du navigateur. De plus, ngx_pagespeed permet aux administrateurs système de configurer de manière granulaire les optimisations à appliquer aux pages Web, leur permettant d'adapter les performances aux besoins spécifiques de leur site Web.
Bien que ngx_pagespeed ait été créé par des développeurs indépendants, il a bénéficié du support de Google jusqu'en 2018 , date à laquelle Google a annoncé l'arrêt du développement actif de mod_pagespeed. Depuis, ngx_pagespeed a également été abandonné et ne fait l'objet d'aucune mise à jour ni d'aucun support officiel.
Où mod_pagespeed est-il encore utilisé ?
De nombreux panneaux de contrôle comme Plesk ou cPanel proposent mod_pagespeed comme fonctionnalité pour améliorer la vitesse et le score de vitesse de page des sites Web. Ces panneaux de contrôle permettent aux administrateurs système d'activer et de configurer facilement mod_pagespeed pour optimiser les performances de leurs pages Web.
Dans Plesk, mod_pagespeed est disponible sous forme d'extension, facile à installer et à configurer par l'administrateur du serveur. Une fois installée, Plesk propose une interface graphique permettant de paramétrer mod_pagespeed, notamment la compression d'images, la minification CSS et JavaScript, et l'optimisation des requêtes du navigateur.
cPanel propose également mod_pagespeed comme option d'optimisation des performances du serveur. À l'instar de Plesk, mod_pagespeed peut être facilement activé et configuré par l'administrateur du serveur. cPanel offre également une interface graphique permettant de configurer les paramètres de mod_pagespeed et de visualiser les résultats des optimisations de performances.
Même si mod_pagespeed n'est plus activement développé par Google, les panneaux de contrôle Plesk et cPanel continuent de l'utiliser comme fonctionnalité pour améliorer la vitesse et le score de vitesse de page des sites Web. Cependant, étant un projet abandonné, il n'y a plus de mises à jour ou de support officiel disponibles pour ces outils.
Pourquoi toujours utiliser mod_pagespeed ou ngx_pagespeed ?
L'informatique est un domaine en constante évolution, et ce qui est considéré comme correct aujourd'hui ne le sera peut-être plus demain. La technologie et la manière dont les utilisateurs interagissent avec elle évoluent sans cesse, et les développeurs et administrateurs système doivent être capables de s'adapter à ces changements pour garantir le bon fonctionnement de leurs sites web et répondre aux besoins des utilisateurs.
Souvent en faisant des recherches sur le net pour optimiser un site web, on tombe sur d'anciens posts, articles et guides qui font référence à une période bien précise, le lecteur n'est pas capable de comprendre le contexte de ce qu'il lit et pense à tort que ce guide d'optimisation qui recommande mod_pagespeed est toujours en vogue et donc ils se prêtent à suivre des tutoriels obsolètes qui non seulement n'apportent pas d'avantages en termes de performances, mais sont même nuisibles.
Google, leader du secteur des moteurs de recherche, a développé au fil des ans divers indicateurs et scores pour évaluer la qualité et les performances des sites web. Par exemple, Google a introduit les Google Core Web Vitals , un ensemble de mesures évaluant la vitesse, l'interactivité et la stabilité visuelle des pages web, ainsi que le score PageSpeed Insights, qui évalue la vitesse et les performances des pages web sur les appareils mobiles et de bureau.
Ces changements dans les mesures de qualité du site Web ont eu un impact significatif sur l'outil mod_pagespeed créé par Google. Initialement conçu pour améliorer les performances des pages Web à l'aide de diverses techniques d'optimisation, mod_pagespeed est rapidement devenu obsolète en raison de l'évolution des métriques d'évaluation de Google. Dans certains cas, l'utilisation de mod_pagespeed peut même avoir un impact négatif sur les performances des pages Web, car les optimisations appliquées par l'outil peuvent ne plus être conformes aux directives actuelles de Google.
mod_pagespeed et Time To First Byte.
Le TTFB ( Time to First Byte) est une mesure qui indique le temps écoulé entre la requête d'une page web par un navigateur et la réception du premier octet de données du serveur. Il est considéré comme un indicateur de la vitesse du serveur et de la latence du réseau. Un TTFB élevé signale un serveur ou une connexion réseau lents , tandis qu'un TTFB faible signale un serveur et une connexion réseau rapides.
Le TTFB (Time To First Byte) est un paramètre important des Google Core Web Vitals , un ensemble de métriques mises en place par Google pour évaluer la vitesse, l'interactivité et la stabilité visuelle des pages web. Ces métriques sont essentielles car Google utilise ces informations pour évaluer la qualité des sites web et déterminer leur classement dans les résultats de recherche. Un TTFB élevé peut nuire à l'expérience utilisateur et à la visibilité d'un site web dans les moteurs de recherche.
Google recommande fortement un TTFB de 200 millisecondes maximum ; évidemment, une valeur optimale est certainement inférieure à 100 millisecondes et, comme nous le verrons, mod_pagespeed ne contribue pas à réduire le TTFB, contrairement à ce que beaucoup croient encore.
Quelqu'un sur le net avait déjà remarqué le problème et avait également ouvert des discussions sur GitHub, mais à cette époque l'accent était presque exclusivement mis sur les scores Pagespeed avec des métriques très discutables et qui ne tenaient pas compte de l'importance du TTFB.
Vous pouvez suivre la discussion originale (dont je reproduis la capture d'écran ci-dessous) à ce lien : https://github.com/apache/incubator-pagespeed-mod/issues/1293
Un autre avertissement est apparu dans une discussion StackOverflow, mentionnant sans détour que mod_pagespeed augmentait le TTFB. Vous pouvez consulter la discussion originale, bien qu'indécise, à ce lien : https://stackoverflow.com/questions/24099190/google-nginx-pagespeed-with-varnish-increases-ttfb
Il est certes difficile de comprendre que, bien que mod_pagespeed soit un module Apache conçu pour améliorer les performances des pages web grâce à diverses techniques d'optimisation, il puisse augmenter le temps de réponse initial (TTFB) d'une page web en raison de la latence introduite par ses opérations d'optimisation. Il effectue des opérations d'optimisation telles que la compression d'images, la minification CSS et JavaScript, et l'optimisation des requêtes du navigateur. Ces opérations prennent du temps à s'exécuter, ce qui peut augmenter le TTFB.
De plus, mod_pagespeed utilise un algorithme de mise en cache pour mettre en cache les pages Web optimisées et réduire la latence des requêtes ultérieures. Cependant, si l'algorithme de mise en cache n'est pas configuré correctement, cela peut entraîner une augmentation du TTFB car le serveur doit d'abord extraire la page Web du cache avant de l'envoyer au navigateur.
Un exemple concret de la façon dont mod_pagespeed ralentit un site WordPress.
Par exemple, regardons un site comme lavocedeltrentino.it, un journal bien connu qui pensait pouvoir résoudre les problèmes de performances de leur site en passant de notre hébergement à celui d'un autre fournisseur improvisé qui a provoqué une dégradation des performances de cette norme .
Après un certain temps, le site partant d'un Apache brut sur Plesk, ils ont pensé qu'il était opportun d'ajouter mod_pagespeed comme technologie à valeur ajoutée pour améliorer la vitesse du site, et effectivement l'amélioration était là si l'on considère que de toute façon mod_pagespeed a un tout les effets d'un Full Page Cache interne qui en cas de lenteur extrême peut également améliorer considérablement les performances comme on peut le voir sur l'écran ci-dessous, atteignant un peu plus de trois secondes, avec une situation initiale malheureuse d'environ le double.
Si l'on examine en détail la réponse de curl, on constate qu'il utilise mod_pagespeed sur Plesk et que, depuis une connexion Fastweb sur fibre optique mixte cuivre, il présente un TTFB de 1,38 seconde, tandis que sur la capture d'écran suivante, testant un site utilisant exactement le même thème (Zox News), comme corrieredellacitta.com, le TTFB n'est que de 0,2 seconde, soit environ 7 fois plus rapide.
Si l'on examine également le TTFB mesuré au niveau européen par SpeedVitals , on constate encore plus en détail à quel point mod_pagespeed est vraiment mauvais en termes de performances, augmentant de manière embarrassante le TTFB avec des scores tous marqués en rouge, contrairement à ceux de ilcorrieredellacitta.com qui sont normaux.


Que faire si vous utilisez mod_pagespeed et comment le remplacer ?
Si vous utilisez mod_pagespeed ou ngx_pagespeed, il est fortement recommandé de supprimer l'extension de toute urgence. Ces modules, bien qu'initialement conçus pour améliorer les performances des pages Web, peuvent entraîner des problèmes de performances en raison de leur obsolescence et des nouvelles directives de Google.
La principale raison de supprimer ces extensions est que de nombreuses opérations d'optimisation effectuées par mod_pagespeed ou ngx_pagespeed peuvent être réalisées plus efficacement et de manière plus granulaire au niveau de l'application, par exemple grâce à l'utilisation de plugins dédiés tels que W3 Total Cache, Autoptimize, Wp Rocket ou des combinaisons de ces outils s'il s'agit d'une installation WordPress.
Par exemple, l'optimisation JS, la minification, la compression, le css critique, la suppression de code inutilisé et la livraison d'images webp peuvent être effectués de manière plus précise et personnalisable grâce à l'utilisation de ces plugins.
La suppression de mod_pagespeed ou ngx_pagespeed de votre serveur et l'utilisation de ces plugins pour optimiser les performances des pages Web vous permettront de vous adapter aux directives actuelles de Google et d'obtenir un contrôle plus précis et granulaire sur l'optimisation des performances de vos pages Web.












