Cela vous est peut-être déjà arrivé. Vous avez enfin mis à jour le site de votre entreprise ── mais en l’ouvrant, c’est l’ancienne version qui vous regarde encore. Ou l’inverse : on vous annonce « le site est corrigé », et rien n’a changé sur votre écran. Vous cherchez, vous demandez au support, et la réponse est presque toujours la même : « Videz votre cache, s’il vous plaît ». Vous le faites et, en effet, ça marche. Mais très peu de gens savent expliquer ce qu’ils viennent de supprimer, ni pourquoi cela a réglé le problème.
Cet article explique depuis le début ce qu’est vraiment le cache. La carte complète en une ligne : le cache est la raison même pour laquelle la même page s’ouvre plus vite la deuxième fois, et l’incident « j’ai mis à jour mais rien n’a changé » est l’effet secondaire payé pour cette vitesse. Les deux sont le recto et le verso du même mécanisme. Si l’une de ces situations vous parle, poursuivez la lecture.
- Un site a été mis à jour mais continuait d’afficher l’ancienne version ── sur votre écran ou celui de vos visiteurs
- On vous dit « videz votre cache » mais vous ne sauriez pas expliquer ce que cela fait réellement
- Vous ne vous êtes jamais demandé pourquoi la même page s’ouvre nettement plus vite la deuxième fois
- Vous videz le cache avec appréhension, sans savoir si cela vous déconnectera de partout
Pour rester accessible aux débutants, cet article évite le jargon superflu. Et il ne s’arrête pas au fonctionnement ── il va jusqu’aux décisions pratiques : dans quel ordre corriger le « rien n’a changé », et ce qui se passe vraiment quand on vide le cache.
| Question | Section |
|---|---|
| C’est quoi le cache, au juste ? | §1 |
| Où vit le cache ? | §2 |
| Combien de temps l’ancienne version va-t-elle s’afficher ? | §3 |
| Pourquoi « j’ai mis à jour mais rien n’a changé » arrive-t-il ? | §4 |
| Comment le corriger ? | §5 |
| Vider le cache me déconnecte-t-il ? | FAQ Q1 |
Dans la synthèse de la série, Que se passe-t-il entre la saisie d’une URL et l’affichage de la page ?, nous avions noté que « l’incident causé par un entrepôt périmé mérite un article entier ». Le voici.
1. Ce qu’est vraiment le cache ── réutiliser des matériaux déjà rapportés une fois
1-1. Une page est faite de dizaines de matériaux rapportés
Quand vous ouvrez une page, ce qui arrive n’est pas un fichier unique. D’abord vient le plan (HTML) puis, en le lisant, le navigateur va chercher au serveur chaque matériau manquant ── images, instructions de style (CSS), pièces animées (JavaScript) ── un par un (le parcours complet est dans Que se passe-t-il entre la saisie d’une URL et l’affichage de la page ?). Des dizaines de matériaux pour une seule page d’actualités, c’est tout à fait normal.
Réfléchissez-y. Quand vous visiterez le même site demain, son logo sera le même qu’aujourd’hui. Les instructions de style, très probablement aussi. Rapporter des fichiers identiques depuis l’autre bout du monde, chaque jour, est un gaspillage évident, non ?
1-2. D’où l’entrepôt local du navigateur ── c’est cela, le cache
Le navigateur range donc un temps les matériaux déjà rapportés dans un entrepôt local (une zone de stockage dans votre PC). À la prochaine ouverture de la même page, tout matériau déjà en entrepôt saute entièrement l’aller-retour et sort directement de l’étagère ── ce mécanisme, et le contenu de l’entrepôt, c’est le cache.
Voilà exactement pourquoi « la deuxième fois est plus rapide ». À la première visite, chacun de ces dizaines de matériaux doit être rapporté ; à la deuxième, la plupart sortent directement de l’entrepôt. Plus vous économisez d’allers-retours, plus la page s’ouvre vite.
Première visite vs. deuxième visite Première visite (chaque matériau est rapporté) Plan HTML : vous <──────── serveur Logo : vous <──────── serveur Styles CSS : vous <──────── serveur △ un aller-retour par matériau Scripts JS : vous <──────── serveur Deuxième visite (directement de l'étagère) Plan HTML : vous <──────── serveur Logo : vous <── [entrepôt local] Styles CSS : vous <── [entrepôt local] △ l'aller-retour est entièrement évité Scripts JS : vous <── [entrepôt local]
1-3. Les cookies font un métier complètement différent
Parce qu’ils sont toujours côte à côte dans la boîte de dialogue de suppression, les cookies et le cache sont confondus en permanence ── mais leurs métiers n’ont rien à voir. Le cookie est la carte de membre qui dit au site « qui vous êtes » ; le cache est la réutilisation de matériaux « identiques pour tout le monde ». Un logo est le même logo que ce soit vous ou n’importe qui d’autre, donc il peut être réutilisé depuis l’entrepôt ; une carte de membre, elle, ne se réutilise pas. Leur suppression diffère tout autant : supprimez les cookies et vous êtes déconnecté ; videz le cache et les pages chargent simplement plus lentement un moment (on y revient dans la FAQ Q1).
2. Il y a des caches partout ── l’entrepôt du navigateur n’en est qu’un parmi d’autres
2-1. « Cache » est le nom d’une idée, pas d’une fonction
Un point important : « cache » n’est pas le nom d’une fonction particulière du navigateur. C’est le nom générique d’une idée ── au lieu d’aller rechercher une chose, réutiliser la copie gardée sous la main. Et cette idée est utilisée dans tous les recoins de l’informatique.
| Où | Copie de quoi | Article lié sur ce site |
|---|---|---|
| L’entrepôt du navigateur | Matériaux de la page (images, CSS, JS) ── le héros de cet article | Cet article |
| Les notes d’annuaire | Réponses aux recherches : « l’adresse (IP) de ce site est ici » | Qu’est-ce que le DNS ? §5 |
| Entrepôts partagés des bureaux et réseaux | Matériaux populaires mis en commun pour tout le réseau | ── |
| Les entrepôts du réseau de livraison (CDN) | Copies des matériaux d’un site réparties dans le monde | Prévu pour un futur article |
| Mémoire ultra-rapide dans le CPU | Copies de données de calcul (cache L1/L2/L3) | Le schéma de hiérarchie mémoire dans l’article sur le redémarrage |
Si vous avez lu notre article sur le DNS, vous vous souvenez de ceci : « une fois un numéro trouvé, garde la note un moment et ne redemande pas ». C’est exactement la même idée. Qu’il s’agisse d’une réponse de recherche (DNS) ou de la marchandise elle-même (matériaux de page), le schéma est identique ── réutiliser une copie, éviter l’aller-retour.
2-2. Plus de couches, plus de vitesse ── et plus d’endroits où traîne une copie périmée
C’est parce que toutes ces couches de cache s’empilent qu’internet tourne à sa vitesse actuelle. Si chaque accès au monde faisait chaque aller-retour en entier, à chaque fois, ni les lignes ni les serveurs ne tiendraient.
Mais cela crée la propriété au cœur de cet article. Plus d’endroits gardant des copies signifie plus d’endroits où une copie dépassée peut s’attarder. Votre entrepôt est à jour, mais un entrepôt partagé en chemin garde encore l’ancienne copie ── cela peut parfaitement arriver. Nous reprendrons ce fil au §4.
Le « côté site » de ce tableau ── ce qu’est exactement le serveur qui détient les matériaux d’origine ── mérite son propre article. Nous prévoyons de le couvrir dans un futur billet.
3. Jusqu’à quand peut-on réutiliser une copie ? ── étiquettes de péremption et vérifications de stock
3-1. Chaque colis porte une étiquette de péremption
Si l’entrepôt réutilisait sa marchandise pour toujours, aucune mise à jour de site n’atteindrait jamais votre écran. Mais si le navigateur demandait au serveur « c’est encore bon ? » pour chaque article, éviter l’aller-retour perdrait la moitié de son intérêt.
Le compromis, c’est l’étiquette de péremption. Quand le serveur remet un matériau, il colle une échéance sur le colis : « réutilisable pendant une heure », « celui-ci tient un an » (techniquement, une consigne appelée Cache-Control ── inutile de retenir le nom). Pour tout ce qui est dans les délais, le navigateur le sort directement de l’étagère et ne demande même pas au serveur. C’est le chemin le plus rapide.
C’est le site qui fixe l’échéance, matériau par matériau. Un logo qui ne change presque jamais reçoit une longue échéance ; un plan de page d’accueil (HTML) qui change souvent, une courte ── c’est la répartition typique.
3-2. Périmé ne veut pas dire jeté ── la vérification de stock
Alors, quand l’échéance tombe, le navigateur jette-t-il la marchandise pour tout rapporter à nouveau ? Pas encore ── il reste une étape astucieuse : la vérification de stock.
Le navigateur demande simplement au serveur : « cet article ── encore utilisable ? ». Si rien n’a changé côté serveur, la réponse entière tient en une ligne : « encore bon, continuez à l’utiliser » ── la marchandise elle-même n’est pas expédiée (techniquement, une réponse courte appelée 304). Aussi gros que soit le fichier, la vérification prend un instant, donc ce chemin est rapide lui aussi. Ce n’est que si l’article a vraiment changé qu’un nouveau colis arrive, étiquette fraîche comprise.
- 1Dans les délaisDirectement de l’étagère. On ne demande même pas au serveur (le plus rapide).
- 2Périmé → vérification → « encore bon »Une réponse d’une ligne règle tout ; aucune marchandise expédiée (rapide quand même).
- 3Périmé → vérification → « ça a changé »Un nouveau colis arrive et remplace la copie sur l’étagère (comme une première visite).
3-3. Les notes d’annuaire portent la même étiquette
Cette règle ── réutiliser jusqu’à l’échéance, puis aller rechercher ── vous rappelle quelque chose ? C’est exactement le TTL de notre article sur le DNS (la consigne qui dit combien de secondes une note d’annuaire peut être réutilisée). Et cette histoire selon laquelle « attendre la propagation d’un déménagement de site », c’est en réalité attendre que les notes du monde entier expirent ── on pourrait dire que c’était la version DNS de l’incident même que nous allons résoudre au §4.
4. La vraie cause de « j’ai mis à jour mais rien n’a changé » ── les nouveaux fichiers devraient pourtant être là
4-1. Rien n’est cassé, et pourtant la page reste vieille
Nous avons maintenant tous les outils pour résoudre l’incident de l’introduction.
À l’instant où vous mettez votre site à jour, les nouveaux matériaux sont réellement sur le serveur. Mais dans l’entrepôt local du visiteur reposent de vieux matériaux dont l’étiquette de péremption n’a pas encore expiré. Comme vu au §3, pour tout ce qui est dans les délais, le navigateur ne demande même pas au serveur ── autrement dit, il n’a jamais l’occasion de remarquer que les nouveaux fichiers existent, et continue de servir les anciens.
Ce qui se passe pendant « j'ai mis à jour mais rien n'a changé »
serveur entrepôt local écran
[nouveaux fichiers] ×── [vieux fichiers] ──> toujours l'ancienne page
△ dans les délais
ils existent déjà « encore bon à réutiliser » rien n'est cassé
donc personne ne demande
Voilà tout le mystère. Ni bug ni panne ── l’ancienne page persiste précisément parce que tout le monde a suivi les règles. C’est le revers inévitable de la décision qui achète la vitesse : « dans les délais, ne demande pas ».
4-2. Pourquoi c’est réparé pour vous mais pas pour les autres
C’est la partie qui déroute le plus les responsables de site. Sur votre écran, vider le cache a réglé le problème. Et pourtant les clients continuent d’écrire : « chez moi, c’est toujours l’ancienne version ».
L’explication est simple : chaque visiteur a son propre entrepôt. Ce que vous avez vidé, c’est votre entrepôt, et seulement le vôtre ; ceux de vos clients gardent leurs vieux matériaux jusqu’à expiration des étiquettes. Vous pouvez nettoyer votre étagère ── vous ne pouvez atteindre celle de personne d’autre (ce que le site lui-même peut faire est à la fin du §5).
4-3. Il n’y a pas qu’un entrepôt ── où est la copie périmée ?
Reprenons le fil laissé au §2 : entre vous et les matériaux, il peut y avoir plusieurs étages d’entrepôts. L’entrepôt de votre navigateur, l’entrepôt partagé du réseau de votre entreprise, ceux du réseau de livraison (CDN), et les notes d’annuaire (DNS) ── l’étage où se trouve la copie périmée détermine qui peut réellement corriger. Le seul que vous contrôlez, c’est le vôtre.
Quand « j’ai vidé mon cache mais c’est toujours vieux », la copie périmée n’est généralement pas dans votre entrepôt ── elle est dans un entrepôt intermédiaire (celui de votre bureau, ou du réseau de livraison) ou dans les notes d’annuaire (DNS). Nettoyer votre étagère cent fois ne videra pas un entrepôt en chemin. Juste après un déménagement de site, suspectez les notes DNS en attente d’expiration (→ l’histoire de la « propagation » dans notre article sur le DNS).
5. Comment corriger, et comment vivre avec ── ne commencez pas par tout effacer
5-1. Essayez d’abord le geste le plus léger
Quand une page « ne se met pas à jour », sauter directement au vidage complet du cache est en réalité le geste gaspilleur. La règle d’or tient en trois étapes, de l’impact le plus faible au plus fort.
| Étape | Geste | Ce que ça fait | Impact |
|---|---|---|---|
| 1 | Rechargement forcé (Windows : Ctrl+F5 / Mac : Cmd+Maj+R) | Ordonne de rapporter à nouveau, en ignorant les étiquettes, les matériaux de cette page uniquement | Cette page seulement. Quasi aucun effet secondaire |
| 2 | Ouvrir la page en fenêtre privée | Teste avec un entrepôt vide ── si elle s’affiche bien là, votre entrepôt est confirmé coupable | Diagnostic seulement. Ne supprime rien |
| 3 | Vider le cache | Vide l’entrepôt de tous les sites | Dernier recours. Tout charge plus lentement un moment |
L’étape 2 est discrètement la plus importante. Si la page reste vieille même en fenêtre privée, votre entrepôt n’est pas le problème (suspectez les entrepôts intermédiaires du §4-3 ── ou la possibilité que la mise à jour n’ait jamais été réellement publiée). Diagnostiquez d’abord, et vous ne viderez jamais toutes les étagères pour rien.
5-2. Vider le cache ne vous déconnecte pas
La raison la plus courante d’hésiter : « ça ne va pas me déconnecter de partout ? » ── rassurez-vous. Comme vu au §1-3, le cache (copies de marchandise) et les cookies (vos cartes de membre) vivent dans des tiroirs séparés. Vider seulement le cache laisse vos connexions intactes.
Le piège : la boîte de dialogue de suppression du navigateur affiche souvent une case « cookies aussi » juste à côté, et la cocher vous déconnectera, évidemment. Les entrées de la boîte correspondent à trois tiroirs distincts ── copies de marchandise (cache), cartes de membre (cookies) et notes des lieux visités (historique). Dès que vous voyez que vous choisissez quel tiroir vider, il n’y a plus rien d’effrayant (FAQ Q5).
Vider le cache a exactement un inconvénient : pendant un moment, chaque site redevient une « première visite » et charge plus lentement. Rien ne casse.
5-3. Un demi-pas côté bâtisseurs de sites ── livrer les mises à jour sans attendre
Pour finir, un demi-pas du côté de ceux qui construisent les sites. Puisqu’on ne peut pas faire le tour des entrepôts des visiteurs pour les vider, les sites qui doivent livrer leurs mises à jour de façon fiable utilisent cette astuce : renommer le matériau lui-même et l’expédier comme un article différent. Transformez logo.png en logo-v2.png, et aucun entrepôt de visiteur ne détient de copie sous ce nom ── l’aller-retour est garanti. (Cela s’appelle le cache busting.) Un site qui ne souffre jamais du « ma mise à jour ne s’affiche pas », cela se construit dès la conception.
Résumé ── l’essentiel en 4 lignes
- Le cache est un entrepôt local : les copies de matériaux rapportés une fois sont réutilisées, l’aller-retour est évité ── la raison même du « c’est plus rapide la deuxième fois »
- Chaque colis a son étiquette de péremption : dans les délais, on ne demande même pas au serveur (le plus rapide). Après, vérification de stock ── « encore bon » règle tout en une ligne
- L’incident, c’est une copie périmée encore dans les délais : les nouveaux matériaux sont déjà sur le serveur, mais un entrepôt dans les délais ne demande jamais ── rien n’est cassé, et pourtant la page reste vieille
- Corrigez avec le geste le plus léger d’abord : rechargement forcé → fenêtre privée pour diagnostiquer → vidage. Vider ne déconnecte pas (les cartes de membre vivent dans un autre tiroir)
Et voilà le trio au complet : la boîte (HTTPS), la carte de membre (cookies) et l’entrepôt (cache). Pour relire depuis l’image complète d’une requête, direction la synthèse de la série.
FAQ
Q1. Vider le cache me déconnecte-t-il ? Quelle différence avec les cookies ?
A. Vider uniquement le cache ne vous déconnecte pas. Le cache, ce sont des « copies de matériaux (images et autres) déjà reçus » ; ce qui vous garde connecté, c’est le cookie (votre carte de membre) ── un tiroir à part (→ notre article sur les cookies). Vous n’êtes déconnecté que si vous cochez aussi les cookies dans la boîte de dialogue. Le coût total du vidage du cache : « les pages chargent plus lentement un moment » ── rien ne casse.
Q2. J’ai vidé mon cache et c’est toujours l’ancienne version. Que faire ?
A. C’est le signe que la copie périmée vit ailleurs que dans votre entrepôt. Trois candidats : ① un entrepôt partagé du réseau de votre bureau ou équivalent (attendez, ou voyez l’administrateur réseau), ② l’entrepôt du site lui-même ou de son réseau de livraison (CDN) (seul l’exploitant du site peut le purger), ③ les notes d’annuaire ── le cache DNS (typique juste après un déménagement de site ; → l’Astuce de notre article sur le DNS). Si une fenêtre privée montre encore l’ancienne page, c’est presque sûrement l’un des trois. Comparer la page en données mobiles et en Wi-Fi aide à départager ① et ②.
Q3. Faut-il vider son cache régulièrement ?
A. Non ── c’est inutile. L’entrepôt se gère tout seul grâce aux étiquettes de péremption : la marchandise expirée se remplace d’elle-même et, quand la place manque, le plus ancien est jeté automatiquement. Le vider par habitude ne fait que renvoyer chaque site à une « première visite » et tout ralentir à chaque fois. Réservez le vidage à une seule situation : diagnostiquer un problème d’affichage.
Q4. La même chose arrive-t-elle sur téléphone ?
A. Oui ── le mécanisme est identique, et le navigateur de votre téléphone a lui aussi son entrepôt. Une chose à savoir : le navigateur qui s’ouvre à l’intérieur d’une application (quand vous touchez un lien dans une appli sociale, par exemple) garde un entrepôt séparé de celui de votre navigateur habituel. Le « c’est réparé dans Safari mais toujours vieux depuis l’appli » vient de là : ce sont deux entrepôts différents.
Q5. Dans la boîte de suppression, quelle différence entre « cache », « cookies » et « historique » ?
A. Trois tiroirs séparés. Le cache, ce sont les copies de matériaux (le supprimer ne fait que ralentir un moment) ; les cookies sont les cartes de membre (les supprimer vous déconnecte et réinitialise les réglages des sites) ; l’historique, ce sont les notes des lieux visités (le supprimer retire les visites passées des suggestions de la barre d’adresse, notamment). Quand « un site s’affiche mal », le tiroir concerné est en pratique le cache seul ── la bonne habitude est donc de ne vider que le tiroir correspondant à votre objectif.

Laisser un commentaire