Les sites Web qui se chargent lentement sont pénibles à utiliser et peuvent vous coûter des utilisateurs. De plus, il n’y a pas d’excuse pour un site Web lent, compte tenu des nombreuses façons d’accélérer les performances, y compris la mise en cache.
Il existe de nombreuses façons de mettre en œuvre la mise en cache, ainsi que des outils qui peuvent vous aider à accomplir cette tâche. Dans cet article, nous parlerons du fonctionnement des proxies inversés et nous vous apprendrons à utiliser Varnish dans WordPress.
C’est parti !
Qu’est-ce qu’un proxy inverse (et pourquoi l’utiliser) ?
Les proxies sont également connus sous le nom de serveurs » intermédiaires « . Dans la plupart des cas, ces serveurs sont placés entre les utilisateurs et le reste du web. Le proxy filtre les demandes des utilisateurs en suivant un ensemble de règles spécifiques.
Pour vous donner un exemple, votre fournisseur d’accès à Internet (FAI) ou votre lieu de travail peut utiliser un proxy pour vous empêcher d’accéder à certains sites web. Vous pouvez également utiliser un serveur proxy pour protéger votre vie privée, crypter des requêtes web ou contourner des restrictions sur le web.
Les proxys « inversés », quant à eux, sont placés entre l’internet et votre serveur web. Leur rôle est de filtrer les requêtes entrantes. Voici quelques-uns des avantages de l’utilisation d’un proxy inverse pour votre site web :
- Équilibrage de la charge. Si vous avez plusieurs serveurs Web, le proxy inverse peut acheminer les demandes en fonction de la charge de chaque ordinateur.
- Amélioration de la confidentialité. L’utilisation d’un reverse proxy masque les informations de votre serveur final. Si quelqu’un fouine, il ne verra pas plus loin que le reverse proxy.
- Gestion de plusieurs certificats SSL (Secure Sockets Layer). Votre reverse proxy peut traiter les requêtes HTTP entrantes et obtenir les données non cryptées requises de votre serveur final.
- Mise en cache. Un reverse proxy peut mettre en cache le contenu statique et dynamique de votre site Web, réduisant ainsi la charge sur votre serveur.
Pour résumer, les reverse proxies sont plutôt cool. Si votre principale préoccupation est d’augmenter les performances de votre site Web WordPress, la mise en cache est l’un des meilleurs outils à votre disposition pour y parvenir.
Il existe cependant plusieurs façons de tirer parti de la mise en cache. Vous pouvez compter sur les navigateurs de vos utilisateurs pour stocker les données, ou utiliser un réseau de diffusion de contenu (CDN) pour gérer la mise en cache pour vous. Vous pouvez également mettre en œuvre un cache par proxy inverse. C’est précisément ce que Varnish peut faire pour les utilisateurs de WordPress.
Introduction à Varnish pour WordPress
Varnish est un outil de mise en cache pleine page open-source, qui peut fonctionner comme un proxy inverse. Cela signifie qu’il peut agir comme un intermédiaire entre les utilisateurs finaux et votre site Web. Chaque fois que quelqu’un visite le site, Varnish vérifie son propre cache pour voir s’il a une copie de la page qu’il veut voir. Si ce n’est pas le cas, il va chercher cette page et la stocke pour une utilisation ultérieure.
En pratique, Varnish peut améliorer considérablement les performances de votre serveur. En effet, il est beaucoup plus facile de servir du contenu en cache que de rendre ce contenu à partir de zéro. En utilisant Varnish pour WordPress, vous pouvez enregistrer des copies de toutes les ressources de votre site Web qui ne changent pas très souvent. Si vous purgez ou renouvelez ce cache périodiquement, vous devriez obtenir un rendu parfait de votre site Web dans la plupart des cas.
Comme nous l’avons mentionné précédemment, les serveurs proxy suivent des règles spécifiques lorsqu’ils traitent les demandes. Varnish utilise son propre langage pour les règles internes, appelé Varnish Configuration Language (VCL). En pratique, le VCL vous donne un contrôle total sur la configuration de votre serveur proxy, vous devrez donc d’abord vous familiariser avec lui.
Vous pouvez également étendre les fonctionnalités de base de Varnish en utilisant des « VMOD », qui sont des modules qui améliorent l’outil. Le site officiel de Varnish maintient un référentiel de VMODs populaires, alors n’hésitez pas à le consulter également.
Pour que Varnish fonctionne, vous devez installer l’outil directement sur votre serveur. Cela signifie que vous devrez avoir accès à la ligne de commande, ce qui exclut les utilisateurs de plans d’hébergement partagé. Si vous utilisez un serveur privé virtuel (VPS), un environnement en nuage ou même un serveur dédié, lisez la suite pour savoir comment configurer Varnish dans WordPress.
Comment configurer Varnish pour WordPress (en 3 étapes)
Tout au long de ce tutoriel, vous effectuerez plusieurs modifications au niveau du serveur. Si vous n’êtes pas à l’aise avec l’utilisation de la ligne de commande ou la modification de votre serveur, il est préférable de lire attentivement toutes les instructions avant de commencer. En outre, il est conseillé de faire une sauvegarde de votre site Web, juste au cas où.
Étape 1 : Installer Varnish sur votre serveur
Pour installer Varnish, vous devez accéder à votre serveur par la ligne de commande. Ensuite, vous devrez installer l’outil, modifier son fichier VCL et configurer votre serveur pour qu’il fonctionne avec lui.
Pour cette étape, consultez les instructions d’installation officielles de Vanish pour les serveurs sous UNIX. Ce bref tutoriel comprend toutes les commandes que vous devrez utiliser dans le bon ordre.
Une fois que vous avez installé Varnish et configuré votre serveur web pour qu’il fonctionne avec lui, n’oubliez pas de tout redémarrer. Vous êtes alors prêt à régler WordPress pour qu’il fonctionne avec votre nouvel outil.
Étape 2 : Configurer un plugin de purge de cache par proxy
Idéalement, vous voulez configurer Varnish pour qu’il purge son cache à des moments prédéterminés. Ainsi, il ne servira pas aux visiteurs des versions périmées de votre contenu.
La meilleure façon de procéder dans WordPress est de purger le cache du proxy inverse chaque fois que vous mettez à jour une page ou un article (ou que vous en créez un nouveau). Comme vous pouvez l’imaginer, il existe un plugin qui peut faire cela pour vous, appelé Proxy Cache Purge:
Nous aimons ce plugin car il ne purge pas tout le cache lorsque vous publiez ou modifiez une page ou un article. Au lieu de cela, il cible uniquement les caches de votre page d’accueil, le contenu édité et les taxonomies associées. Le seul moment où le plugin purge automatiquement l’ensemble du cache du proxy inverse est lorsque vous changez de thème.
Proxy Cache Purge ne nécessite aucune configuration supplémentaire, mais vous devez activer les permaliens personnalisés pour que le plugin fonctionne correctement. Si vous n’utilisez pas déjà une structure de permaliens personnalisés (ce qui devrait être le cas !), consultez notre guide sur la façon de la mettre en place. N’importe quelle structure fera l’affaire, alors n’hésitez pas à choisir votre préférée.
Étape 3 : Configurez vos paramètres Varnish pour WordPress
Si vous avez suivi les instructions officielles d’installation de Varnish, vous vous retrouverez avec un fichier de configuration qui fonctionne pour WordPress mais qui n’est pas optimisé pour la plateforme.
Pour optimiser Varnish pour WordPress, nous vous recommandons d’apporter trois petites modifications à votre fichier VCL :
- Configurez Varnish pour qu’il ignore certains cookies spécifiques.
- Exclure les pages d’administration et de connexion de WordPress.
- Prolongez la durée du cache du proxy inverse.
Vous pouvez le faire en ouvrant le fichier de configuration de Varnish à l’aide d’un éditeur de texte via la ligne de commande. Le fichier que vous recherchez est default.vcl, et il doit être situé ici :
/etc/varnish/default.vcl
Ouvrez le fichier et ajoutez-y le bout de code suivant, qui provient de la documentation officielle de Varnish:
#désactiver les cookies wordpress sub vcl_rec{ .. set req.http.cookie = regsuball(req.http.cookie, "wp-settings-d+=[^ ;]+( ; )?&quot ;, "&quot ;); set req.http.cookie = regsuball(req.http.cookie, "wp-settings-time-d+=[^ ;]+( ; )?&quot ;, "&quot ;); set req.http.cookie = regsuball(req.http.cookie, "wordpress_test_cookie=[^ ;]+( ; )?&quot ;, "&quot ;); si (req.http.cookie == "amp;quot;&quot ;) { annuler req.http.cookie ; }= } # exclure les urls de connexion et d'administration de wordpress if (req.url ~ "wp-admin|wp-login&quot ;) { return (pass) ; } # extension du temps de mise en cache sub vcl_backend_response { if (beresp.ttl == 120s) { set beresp.ttl = 1h ; } }
Sauvegardez les changements dans default.vcl, et vous êtes prêt à partir. Votre serveur proxy inverse est prêt à fonctionner avec WordPress. Désormais, Varnish ne contactera plus votre serveur toutes les deux minutes (ce qui est le cas par défaut), mais une fois par heure.
Conclusion
Si vous avez un accès complet à votre serveur, la mise en œuvre d’un reverse proxy pour WordPress est un moyen efficace d’améliorer les temps de chargement pour les utilisateurs. De plus, l’utilisation d’un reverse proxy peut permettre à votre serveur de gérer des charges de trafic beaucoup plus importantes, puisque Varnish se charge de l’essentiel du travail pour vous.
Vous devez avoir accès à votre serveur pour configurer Varnish pour WordPress. Ensuite, l’installation et la configuration ne se font qu’en trois étapes :
-
- Installez Varnish sur votre serveur.
- Configurez un plugin de purge de cache de proxy
.
- Configurez vos paramètres Varnish pour WordPress.
Vous avez des questions sur la façon d’utiliser Varnish avec WordPress ? Parlons-en dans la section des commentaires ci-dessous !