Google porte une attention particulière à la vitesse de chargement des sites Internet. Les sites se chargeant rapidement bénéficient d’une meilleure note de référencement dans de nombreux moteurs de recherche. Google a effectué ce changement car cette société promeut énormément l’amélioration de la qualité de la navigation sur Internet. Il est très agréable d’accéder à un site et de ne pas avoir à attendre plusieurs secondes voir dizaines de secondes pour qu’il ait fini de se charger.
Quels outils pour mesurer la vitesse de chargement d’un site ?
GT Metrix
GT Metrix est un service mesurant les indices Google PageSpeed et Yahoo! Slow d’une page. Son interface est très propre et lisible. Il propose des informations sur les mesures à prendre pour corriger les problèmes. Il a l’intérêt de proposer l’accès gratuit à une API qui permet d’y connecter un outil de mesure automatisé.
Pingdom Website Speed Test
Pingdom Website Speed Test se concentre principalement sur l’indice Google PageSpeed. Son principal intérêt est l’analyse qu’il propose de la répartition des types de contenus présents dans la page analysée et l’affichage d’un diagramme « Chute d’eau » très lisible du déroulement du chargement de la page.
Google PageSpeed Insights
Google PageSpeed Insights est un service de mesure de la vitesse de chargement proposé par Google. Son principal intérêt est de fournir une note séparé pour la vitesse sur périphériques mobiles (i.e. téléphones portables).
Test d’optimisation mobile par Google
Ce service vérifie si la page est adaptée à la navigation sur téléphone portable. Il ne propose pas d’informations supplémentaires en terme de vitesse, et est indiqué ici à titre informatif.
Quelle configuration du serveur choisir pour améliorer la vitesse de WordPress ?
Utiliser PHP FPM
PHP FPM (pour FastCGI Process Manager) est une méthode de mise en place de PHP basée sur la mise en place d’un démon en tâche de fond gérant l’exécution des requêtes PHP. Cela permet de détacher complètement l’exécution de PHP du serveur HTTP, et permet d’augmenter le nombre de requêtes gérée simultanément par le serveur.
Pour utiliser PHP FPM, je vous invite à suivre mon guide: Installer PHP-FPM sur Debian.
Activer HTTP/2.0
HTTP/2.0 est la toute dernière spécification pour le protocole HTTP. Cette nouvelle version apporte de nombreuses améliorations en terme de vitesse de chargement et est un pré-requis absolu pour avoir un site rapide.
Pour mettre en place un VirtualHost Apache 2 avec support du HTTP/2.0, la méthode la plus simple est d’utiliser mon outil a2tools qui supporte par défaut le HTTP/2.0 depuis la version 3.5.0: Simplifier l’administration d’un serveur Apache 2 avec a2tools.
Pour activer manuellement le protocole HTTP/2.0 sur votre serveur, suivez ces étapes:
Activez le module http2:
[pastacode lang= »bash » manual= »sudo%20a2enmod%20http2″ message= » » highlight= » » provider= »manual »/]
Ajoutez les lignes suivantes au VirtualHost du site WordPress:
[pastacode lang= »apacheconf » manual= »%3CIfModule%20mod_http2.c%3E%0A%20%20Protocols%20h2%20h2c%20http%2F1.0%0A%3C%2FIfModule%3E » message= » » highlight= » » provider= »manual »/]
h2 est le protocole HTTP/2.0 sur connexion HTTPS (chiffrée). h2c est le protocole HTTP/2.0 sur connexion HTTP (non chiffrée). Ne conservez que le protocole h2 ou h2c selon que le VirtualHost modifié est pour le port 443 (HTTPS) ou le port 80 (HTTP).
Testez la modification de la configuration:
[pastacode lang= »bash » manual= »sudo%20apache2ctl%20-t » message= » » highlight= » » provider= »manual »/]
Redémarrez le serveur Apache:
[pastacode lang= »bash » manual= »sudo%20systemctl%20force-reload%20apache2″ message= » » highlight= » » provider= »manual »/]
Optimiser la configuration du serveur MySQL
Le serveur MySQL est un point parfois oublié de l’optimisation d’un site Internet. Pourtant lorsque l’affichage d’une page dépends de l’exécution de centaines de requêtes SQL, c’est une étape importante. Pour une optimisation initiale, je vous invite à suivre mon guide Optimiser MySQL sur Debian.
Il est bien entendu possible d’aller beaucoup plus loin dans l’optimisation que ce qui est proposé par ce guide, mais cela nécessite des connaissances avancées et beaucoup de temps. Ce n’est nécessaire que pour des sites ayant plusieurs dizaines de milliers de visiteurs quotidiens.
Aller plus loin ?
L’optimisation d’un site peut être poussée très loin. On peut par exemple penser à l’utilisation d’un serveur de cache spécialisé tel que Varnish, à l’abandon de Apache 2 pour NGInx, ou encore à l’utilisation de la compilation Just-In-Time tel que proposée par HHVM.
Toutes ces approches demandent du temps de mise en place et ne sont nécessaires que dans des situations de très fort trafic. N’oubliez pas que la première étape pour améliorer votre référencement est d’améliorer votre contenu.
Quel plugins WordPress utiliser pour optimiser le référencement d’un site ?
Yoast SEO est l’une des meilleures extension pour gérer les informations Meta de vos pages, et pour mesurer la lisibilité de vos articles en terme de référencement.
Media File Renamer est une extension améliorant l’URL de vos fichiers médias (images, etc.) en y incorporant le titre de l’image. Très utile pour ajouter des mots clefs à vos pages de manière naturelle.
PB Seo Friendly Image assure que toutes vos images aient un attribut « alt », qui est nécessaire pour les cas ou l’image ne se charge pas. Son absence est très pénalisée par les moteurs de recherche.
Quel plugins WordPress utiliser pour optimiser la vitesse de chargement d’un site ?
Cette extension optimise le code CSS et Javascript d’un site en minifiant et combinant les fichiers. C’est un absolu pour réduire le nombre de requêtes par pages.
Cette extension permet de configurer le chargement non bloquant du code javascript. Cela permet à la page de s’afficher dès que possible plutôt qu’attendre la fin du téléchargement des fichiers javascript.
Cette extension est la solution de mise en cache des pages la plus simple à mettre en place et l’une des plus efficaces et rapide. Si elle en vous convient pas, je vous invite à vous tourner vers W3 Total Cache.
Couplez toujours cette extension avec Autoptimize et Async JavaScript.
Si Cache Enabler ne vous convient pas, W3 Total Cache est une bonne alternative. Cette extension est très complète et l’une des meilleures solution de cache pour serveur dédié. Son principal intérêt est de pouvoir être configurée pour gérer le cache en mémoire vive (OpCode) plutôt que sur disque dur. L’intérêt est limité car les serveurs HTTP sont conçu pour accéder rapidement aux données disques, mais …
Attention, n’utilisez pas la fonction Minify de W3 Total Cache, préférez l’utiliser en conjonction avec Autoptimize et Async JavaScript.
Far Future Expiry Header facilite grandement la configuration les entêtes HTTP de gestion du cache. Cette extension apporte une simple modification du fichier .htaccess qui peut être réalisée manuellement. Je la présente ici car elle est très utile pour les personnes n’ayant pas les connaissances techniques nécessaires.
Cette extension optimise le poids des images du site en utilisant des logiciels installés sur le serveur, et non des services tiers. Un absolu pour réduire le poids global de vos pages.
Cette extension affiches des images réduites pour les navigateurs nomades (i.e. téléphones portables). Cela permet de réduire le temps de chargement du site via les connexions 3G.