Comprendre le cache
Comprendre pourquoi un site conserve parfois une copie temporaire, ce que cela accélère et pourquoi une ancienne version peut rester visible.
Pourquoi le cache existe
Un cache est une copie temporaire conservée pour éviter de refaire inutilement le même travail ou de retélécharger les mêmes fichiers. Comme une information déjà préparée à l’accueil d’un lieu, elle permet de répondre plus vite à une demande fréquente.
Pour afficher une page, un site peut solliciter le serveur, exécuter du PHP et parfois consulter une base de données. Il peut aussi devoir envoyer plusieurs fois les mêmes images, feuilles CSS, scripts ou polices. Le cache évite de répéter une partie de ce travail et peut réduire le temps de réponse comme la charge du serveur.
Il ne remplace pas le rôle du serveur web, de PHP ou de la base de données. Il conserve seulement une réponse ou une ressource déjà prête lorsque le contexte le permet.
Les principaux emplacements du cache
La copie ne se trouve pas toujours au même endroit. Un site peut utiliser un ou plusieurs de ces niveaux, mais il n’est pas nécessaire qu’ils soient tous présents.
| Niveau | Où la copie est conservée | Ce qui peut être conservé | Effet recherché | Limite importante |
|---|---|---|---|---|
| NiveauNavigateur | Où la copie est conservéeSur l’appareil du visiteur | Ce qui peut être conservéImages, CSS, JavaScript, polices ou parfois une page | Effet recherchéÉviter de retélécharger les mêmes ressources | Limite importanteLe visiteur peut encore voir une ancienne ressource |
| NiveauApplicatif ou CMS | Où la copie est conservéeDans l’application qui produit le site | Ce qui peut être conservéRésultats de calculs, requêtes ou fragments de contenu | Effet recherchéÉviter de recalculer une réponse identique | Limite importanteDoit respecter les données propres à chaque utilisateur |
| NiveauPage côté serveur ou hébergeur | Où la copie est conservéePrès du serveur qui répond au site | Ce qui peut être conservéUne page publique déjà générée | Effet recherchéRépondre plus vite sans régénérer toute la page | Limite importanteUne modification peut nécessiter une purge ou une attente |
| NiveauCDN | Où la copie est conservéeSur des serveurs répartis près des visiteurs | Ce qui peut être conservéRessources statiques et parfois pages publiques | Effet recherchéRéduire la distance et la charge du serveur d’origine | Limite importanteUne copie peut rester servie jusqu’à son renouvellement |
Le guide 24 abordera ensuite le rôle d’un CDN plus précisément. Il reste à venir, donc aucun réglage ni lien actif n’est nécessaire ici.
Ce qui peut être conservé ou non
Les images, fichiers CSS, JavaScript, polices et pages publiques qui changent peu sont souvent de bonnes candidates au cache. Leur contenu est identique pour de nombreux visiteurs et peut être réutilisé sans confusion.
À l’inverse, un espace client, un panier, un paiement, un profil utilisateur, une administration ou toute donnée personnalisée doit être traité avec beaucoup plus de prudence. Un cache mal configuré ne doit jamais afficher les informations d’un utilisateur à un autre.
Avant de conserver une page, demandez-vous si son contenu est public et identique pour tout le monde. Une page connectée ou personnalisée exige des règles adaptées, voire l’absence de cache public.
Pourquoi une ancienne version peut apparaître
Après une modification, voir encore l’ancienne version ne signifie pas forcément que le changement a échoué. Le navigateur peut conserver une ressource, un cache de page ou d’hébergement peut ne pas avoir été purgé, ou un CDN peut encore servir une copie. La bonne version peut aussi ne pas avoir été correctement déployée, ou le mauvais environnement peut avoir été vérifié.
- Vérifiez que la bonne version a été déployée.
- Identifiez quel niveau de cache peut répondre à la demande.
- Purgez le cache concerné ou attendez son expiration selon la configuration.
- Testez à nouveau, idéalement dans une fenêtre privée ou un autre navigateur.
- Évitez de multiplier les modifications à l’aveugle.
Ce raisonnement aide à séparer un problème de publication d’un problème de copie conservée, plutôt que de modifier le site sans savoir ce qui est réellement servi.
Expiration, purge et invalidation
La durée de vie, ou expiration, indique combien de temps une copie peut être utilisée avant d’être redemandée ou renouvelée. Une durée longue peut convenir à un fichier qui change presque jamais ; elle est moins adaptée à une page fréquemment mise à jour.
Une purge consiste à retirer une copie conservée. L’invalidation consiste à la considérer comme obsolète pour qu’elle ne soit plus utilisée. Les mots et les écrans varient selon les outils, mais l’idée reste la même : servir à nouveau une version à jour. Il n’existe pas de durée universelle valable pour tous les sites.
Cache et performance : une relation utile, mais non magique
Le cache peut améliorer la vitesse perçue et réduire la charge du serveur. Il ne résout pas automatiquement une image trop lourde, un serveur surchargé, un code lent, une base de données mal utilisée, une connexion Internet lente ou une page qui télécharge trop de ressources.
Il fait partie d’un ensemble de bonnes pratiques de performance. Il faut donc observer ce qui est réellement lent avant de conclure qu’un cache suffit.
Cache et sécurité
Le cache doit respecter le contexte de chaque visite. Ne mettez pas publiquement en cache un contenu privé et vérifiez les pages connectées après toute modification de cache. Un cache n’est ni une sauvegarde, ni un dispositif de sécurité complet.
Les principes présentés dans le guide sur les mots de passe, permissions et accès restent essentiels : limiter les accès et vérifier ce que chaque personne peut consulter ou modifier. Une réponse rapide ne doit jamais devenir une fuite d’information.
Checklist pratique
- Sachez quel cache est actif sur le projet.
- Sachez comment le vider ou demander son renouvellement.
- Vérifiez les pages publiques comme les pages connectées.
- Testez la version réellement servie après une publication.
- Gardez une copie ou une sauvegarde avant une modification importante.
- Documentez les outils de cache utilisés sur le projet.
Ce qu’il faut retenir
- Le cache conserve temporairement une réponse ou une ressource pour éviter un travail inutile.
- Il peut se trouver dans le navigateur, l’application, le serveur ou un CDN.
- Une ancienne version peut provenir d’une copie conservée, d’un déploiement incomplet ou d’un mauvais environnement de test.
- Expiration, purge et invalidation servent à renouveler une copie devenue obsolète.
- Les contenus privés et connectés demandent des règles particulièrement prudentes.