J'AI MODIFIé MON SITE, MAIS JE VOIS TOUJOURS L'ANCIENNE VERSION : POURQUOI ?

image illustration
Vous avez demandé une modification sur votre site internet.
Votre webmaster vous confirme que tout est en ligne. Pourtant, lorsque vous consultez votre site, rien n'a changé ! Avant d'accuser votre prestataire d'avoir oublié son travail, sachez qu'un mécanisme parfaitement normal peut expliquer cette situation : le cache informatique.

1. « Mais enfin, mon site n'a pas changé ! »

Illustrons le cas typique : vous contactez votre webmaster pour modifier une photographie, remplacer un texte ou changer une couleur sur votre site internet.
Quelques heures plus tard, il vous confirme que les modifications ont été effectuées.
Vous ouvrez votre navigateur, consultez votre site et... surprise !

Rien n'a changé.

Vous actualisez la page. Toujours rien.
Vous recommencez, un peu plus énergiquement cette fois, comme si appuyer plus fort sur la touche F5 pouvait convaincre votre ordinateur de coopérer.
Mais non.
L'ancienne version est toujours là.
Vous commencez alors à vous poser quelques questions :

  • Votre webmaster a-t-il réellement effectué les modifications ?
  • Vous prend-on pour une truffe ?
  • Votre site rencontre-t-il un problème technique ?
  • Votre ordinateur fait-il des siennes ?

Rassurez-vous, dans de nombreux cas, personne n'a commis d'erreur.

Le responsable est peut-être simplement le cache.

Un mécanisme invisible pour la plupart des internautes, pourtant essentiel au bon fonctionnement du Web.

Voyons ensemble ce qu'est ce fameux cache, pourquoi il existe et comment éviter qu'il ne transforme une simple modification de site internet en petit casse-tête.

2. Le cache informatique : une mémoire qui nous fait gagner du temps

Pour comprendre le fonctionnement du cache, prenons un exemple simple :  
Imaginez que vous travailliez dans un bureau et que vous ayez régulièrement besoin de consulter un document rangé dans une armoire située à l'autre bout du bâtiment. Chaque consultation vous oblige à vous déplacer, ouvrir l'armoire, retrouver le document, le consulter, puis retourner à votre bureau. Ce n'est pas très commode et c'est consommateur d'énergie et de temps !

Vous décidez donc d'en conserver une copie dans le tiroir de votre bureau. Désormais, lorsque vous avez besoin de ce document, vous pouvez le consulter immédiatement, sans refaire tout le trajet.

Félicitation ! Vous venez d'inventer le principe du cache.

En informatique, le cache consiste à conserver temporairement des données déjà obtenues ou calculées afin de pouvoir les réutiliser plus rapidement. Sur Internet, ce mécanisme intervient constamment. Lorsque vous consultez un site web, votre navigateur doit récupérer différents éléments : textes, photographies, logos, feuilles de style, scripts et parfois des informations provenant d'une base de données. Sans mécanisme de cache, une grande partie de ces opérations devrait être répétée inutilement à chaque consultation. Le cache permet donc de conserver certaines informations pour éviter de les télécharger ou de les recalculer systématiquement.

Pourquoi utilise-t-on des caches ?

Les avantages sont nombreux :

Des pages plus rapides à afficher
En réutilisant des ressources déjà disponibles, votre navigateur peut afficher certaines pages beaucoup plus rapidement.

Moins de données à transférer
Inutile de télécharger dix fois le même logo si celui-ci n'a pas changé.

Des serveurs moins sollicités
En évitant certaines opérations répétitives, le cache réduit la charge de travail des serveurs informatiques.

Une navigation plus confortable
Les visiteurs profitent généralement d'un affichage plus fluide, notamment lorsqu'ils consultent plusieurs pages d'un même site.

Une utilisation plus efficace des ressources
Moins de transferts et de calculs inutiles peuvent également contribuer à limiter la consommation de ressources informatiques.

Le cache est donc une excellente invention. Mais notre copie de document conservée dans un tiroir présente un petit inconvénient. Que se passe-t-il lorsque le document original est modifié, mais que nous continuons à consulter notre ancienne copie ? Nous disposons alors d'une information périmée. C'est précisément ce qui peut arriver avec un site internet.

3. Les différents types de cache : une histoire de copies

Une difficulté d'appréhension des caches en général vient du fait qu'il n'existe pas un seul cache informatique. En effet, plusieurs mécanismes peuvent intervenir entre le site internet et votre écran.

Certains se trouvent directement sur votre ordinateur ou votre smartphone.  D'autres fonctionnent sur des serveurs distants, parfois situés à plusieurs milliers de kilomètres.

Découvrons les principaux.

Le cache du navigateur : celui qui habite chez vous :

Votre navigateur internet, qu'il s'agisse de Firefox, Chrome, Safari, Edge ou d'un autre logiciel, dispose de son propre système de cache. Lorsque vous visitez un site, il peut conserver temporairement certains éléments sur votre appareil.

Par exemple :

  • Le logo du site.
  • Les photographies et illustrations.
  • Les fichiers CSS qui définissent l'apparence des pages.
  • Les fichiers JavaScript qui assurent certaines fonctionnalités.
  • Certaines pages ou réponses web, selon leur configuration.

Lors de votre prochaine visite, le navigateur peut réutiliser ces ressources au lieu de les télécharger à nouveau. C'est particulièrement utile pour les éléments qui changent rarement. Mais imaginons que votre webmaster remplace le logo de votre entreprise tout en conservant le même nom de fichier. Votre navigateur possède déjà une copie de ce logo et peut, selon les règles de cache applicables, continuer à l'utiliser.

Résultat : le nouveau logo existe bien sur le serveur, mais vous voyez toujours l'ancien.

Il faut toutefois préciser que les navigateurs ne conservent pas aveuglément toutes les ressources. Ils respectent différentes règles qui leur permettent de déterminer si une copie peut encore être utilisée ou si une vérification auprès du serveur est nécessaire. Nous reviendrons sur ce fonctionnement un peu plus loin.

Le cache local : votre ordinateur possède aussi sa mémoire

Le navigateur n'est pas le seul logiciel à utiliser des caches. Votre système d'exploitation, Windows, macOS ou Linux, dispose lui aussi de différents mécanismes de mémorisation temporaire. 

L'un des exemples les plus connus concerne le DNS. Derrière ce nom un peu technique se cache un système indispensable au fonctionnement d'Internet. Lorsque vous saisissez une adresse comme www.weblandes.com, votre appareil doit déterminer à quelle adresse IP correspond ce nom de domaine. C'est notamment le rôle du DNS.

Pour éviter de répéter inutilement cette recherche, le résultat peut être conservé temporairement dans un cache. Ce mécanisme est généralement transparent pour l'utilisateur. Mais si un site change de serveur et que votre appareil conserve une ancienne information DNS, il peut continuer pendant quelque temps à tenter de joindre l'ancienne destination.

Attention : le cache DNS ne conserve pas les pages web ou les photographies. Il mémorise des informations permettant de trouver les serveurs.

Il s'agit donc d'un problème différent de celui d'une ancienne image affichée par votre navigateur.

Le cache du serveur : les copies conservées chez l'hébergeur

Quittons maintenant votre ordinateur pour nous intéresser au serveur qui héberge le site internet. Un site moderne ne se résume pas toujours à quelques fichiers HTML. Il peut utiliser un langage comme PHP, interroger une base de données, effectuer des calculs ou assembler différents éléments pour produire une page. Certaines opérations peuvent être relativement coûteuses en temps et en ressources.

Pour éviter de les répéter à chaque visite, le serveur ou l'application peut temporairement conserver des résultats. C'est ce qu'on appelle, de manière générale, le cache serveur.

Il peut notamment concerner :

  • Des pages HTML déjà générées.
  • Des fragments de pages.
  • Des résultats de requêtes vers une base de données.
  • Des données fréquemment utilisées par l'application.

Certaines ressources nécessaires à l'exécution du code. Prenons l'exemple d'un site présentant une liste de produits. Plutôt que de reconstruire entièrement cette liste à chaque visite, le système peut en conserver une version temporaire. Cela accélère considérablement certaines opérations. En revanche, si un produit est modifié et que le cache correspondant n'est pas actualisé, l'ancienne information peut continuer à apparaître. Il existe également des mécanismes comme OPcache, utilisé avec PHP, qui conservent une version compilée du code pour accélérer son exécution. Tous ces caches n'ont pas le même rôle, et tous ne provoquent pas les mêmes problèmes d'actualisation.

Le cache externe : quand Internet conserve lui aussi des copies

Voici une autre particularité du Web moderne. Lorsque vous consultez un site, les informations ne proviennent pas nécessairement directement du serveur qui l'héberge. Certains sites utilisent des services intermédiaires, notamment des CDN. 

CDN signifie Content Delivery Network, que l'on peut traduire par réseau de diffusion de contenu.

Le principe consiste à répartir certaines ressources sur plusieurs serveurs géographiquement dispersés. Imaginons un site hébergé en France et consulté par un internaute situé au Japon. Plutôt que de récupérer systématiquement toutes les ressources depuis la France, un CDN peut fournir certaines données depuis un serveur plus proche du visiteur. Les avantages sont évidents : moins de distance à parcourir, des temps de réponse potentiellement réduits et une meilleure répartition du trafic.
Mais ces serveurs intermédiaires peuvent eux aussi conserver des copies temporaires. Si une photographie est remplacée sur le serveur d'origine, un CDN peut continuer à diffuser l'ancienne version jusqu'à l'expiration ou l'invalidation de son cache.

Et voilà une nouvelle source possible de confusion !

Plusieurs caches empilés pour une seule page

Pour résumer, le parcours simplifié d'une consultation peut ressembler à ceci :

image illustration

À différentes étapes, des mécanismes de cache peuvent intervenir. Tous les sites n'utilisent pas l'ensemble de ces couches, mais une même page peut dépendre de plusieurs caches. C'est pourquoi vider le cache de votre navigateur ne suffit pas toujours à résoudre un problème d'affichage.

4. Pourquoi les modifications ne sont-elles pas immédiatement visibles ?

Maintenant que nous connaissons les différents mécanismes, revenons à notre problème initial. Votre webmaster a modifié votre site, mais vous voyez toujours l'ancienne version. Pourquoi ? Parce qu'un système de cache doit déterminer pendant combien de temps une copie peut être conservée et réutilisée.

Une question de durée de conservation

Certaines ressources peuvent être mises en cache pendant quelques secondes, quelques minutes, plusieurs heures ou beaucoup plus longtemps. Cette durée dépend de la configuration du site et des différents systèmes concernés. On parle souvent de TTL, pour Time To Live, autrement dit une durée de vie.

Prenons un exemple volontairement simplifié.

Votre navigateur récupère une photographie et reçoit l'autorisation de réutiliser cette copie pendant 24 heures. Une heure plus tard, le webmaster remplace la photographie sur le serveur. Si le navigateur considère toujours sa copie comme valide, il peut continuer à afficher l'ancienne image. Il ne sait pas nécessairement que le fichier original a changé. Lorsque la durée de fraîcheur arrive à expiration, le navigateur doit réévaluer la possibilité de réutiliser sa copie. Il peut notamment interroger le serveur pour vérifier si la ressource a été modifiée.

Expiration ne signifie pas forcément nouveau téléchargement

Petite subtilité intéressante : lorsqu'une copie devient trop ancienne, cela ne signifie pas nécessairement qu'il faut télécharger à nouveau tout le fichier. Le navigateur peut demander au serveur si la ressource a changé. Si elle est identique, le serveur peut simplement confirmer que la copie existante reste utilisable. Ce mécanisme évite des transferts inutiles. Il repose notamment sur des informations techniques comme ETag ou Last-Modified.
Inutile de retenir ces noms pour utiliser votre site !
L'essentiel est de comprendre que les caches peuvent vérifier la fraîcheur des informations sans tout télécharger à nouveau.

Pourquoi deux personnes voient-elles parfois des versions différentes ?

Voilà une situation particulièrement déroutante. Vous consultez votre site depuis votre ordinateur et voyez l'ancien contenu. Votre collègue ouvre exactement la même page et découvre immédiatement la nouvelle version.
Comment est-ce possible ?
Tout simplement parce que vos navigateurs ne possèdent pas nécessairement les mêmes copies ni les mêmes historiques de consultation. Votre collègue n'avait peut-être jamais chargé l'ancienne ressource. Son navigateur a donc récupéré directement la nouvelle. Des différences peuvent également provenir de caches intermédiaires ou de configurations particulières.

Deux internautes peuvent ainsi consulter la même adresse sans recevoir exactement les mêmes ressources au même moment.

5. Les pièges et les idées reçues sur le cache

Le fonctionnement du cache est à l'origine de nombreuses incompréhensions.

Passons en revue quelques idées reçues :

  • « Si je ne vois pas la modification, c'est qu'elle n'a pas été faite ! »
    Pas nécessairement. Le nouveau contenu peut parfaitement être présent sur le serveur, tandis que votre navigateur ou un cache intermédiaire continue à afficher une ancienne version.Avant de conclure à un oubli, mieux vaut effectuer quelques vérifications.
  • « J'ai appuyé sur F5, donc tout devrait être actualisé ! » 
    Pas toujours. Une actualisation classique ne garantit pas que toutes les ressources seront téléchargées à nouveau. Selon les règles de cache et le navigateur utilisé, certaines copies peuvent être réutilisées après vérification. Il existe heureusement des méthodes de rechargement plus poussées.
  • « J'ai vidé le cache de mon navigateur, mais rien n'a changé ! »
    C'est tout à fait possible. Si l'ancienne version provient d'un cache serveur ou d'un CDN, supprimer les fichiers temporaires de votre ordinateur ne réglera pas nécessairement le problème. Vous pouvez même télécharger à nouveau une ressource périmée depuis un serveur intermédiaire.
  • « En navigation privée, il n'y a plus de cache ! »
    C'est une idée répandue, mais inexacte. La navigation privée utilise généralement un contexte de navigation distinct, avec ses propres données temporaires. Elle peut donc être utile pour comparer les résultats. En revanche, elle ne supprime pas les mécanismes de cache du serveur ou des CDN. Elle ne garantit pas non plus l'absence de toute mise en cache pendant la session.
  • « Le cache ralentit mon site et nuit à son référencement ! »
    En règle générale, c'est plutôt l'inverse. Une bonne gestion du cache contribue à améliorer les performances d'un site internet. Et la rapidité d'affichage participe à la qualité de l'expérience utilisateur. Une configuration inadaptée peut néanmoins poser des problèmes, notamment lorsqu'elle maintient des informations obsolètes trop longtemps.Le problème n'est donc pas l'existence du cache, mais sa mauvaise utilisation.
  • « Mon webmaster me raconte des histoires avec son cache ! »
    Nous y voilà : quel escroc celui-là !
    Soyons justes. Il arrive qu'une modification n'ait effectivement pas été réalisée correctement. Mais, il arrive aussi qu'un professionnel ait parfaitement effectué son travail et que l'ancienne version reste visible à cause d'un cache. Avant de dégainer le téléphone pour demander des explications, quelques manipulations simples peuvent éviter un malentendu. Et, accessoirement, préserver la bonne humeur de chacun !

6. Comment forcer l'actualisation d'une page web ?

Passons à la pratique.

Vous êtes face à une page qui refuse obstinément d'afficher les dernières modifications ?
Voici plusieurs méthodes à essayer, de la plus simple à la plus approfondie.

Première méthode : actualiser normalement la page. C'est le premier réflexe.

Sur la plupart des navigateurs, vous pouvez utiliser la touche F5 ou cliquer sur le bouton d'actualisation. Vous pouvez également utiliser le raccourci Ctrl + R ou Ctrl + F5 sur Windows et Linux, ou Cmd + R sur macOS.

Cette opération demande au navigateur de recharger la page. Cependant, certaines ressources peuvent encore provenir du cache.
Si rien ne change, passez à la méthode suivante.

Deuxième méthode : forcer le rechargement
Cette opération demande généralement au navigateur de récupérer à nouveau les ressources de la page, sans réutiliser son cache HTTP habituel.Sur de nombreux navigateurs sous Windows ou Linux, utilisez : Ctrl + Maj + R
Le raccourci Ctrl + F5 fonctionne également dans plusieurs navigateurs.
Sur macOS, les raccourcis dépendent du navigateur. Par exemple, Chrome utilise généralement Cmd + Maj + R.
Attention, les comportements exacts peuvent varier selon les logiciels.
Cette méthode est souvent suffisante pour résoudre les problèmes liés à un ancien fichier CSS, JavaScript ou à une image conservée localement. Mais elle ne purge pas les caches distants.

Troisième méthode : essayer la navigation privée
Ouvrez une nouvelle fenêtre de navigation privée et consultez votre site. Puisque cette fenêtre utilise généralement un espace de stockage distinct de votre navigation habituelle, elle peut vous permettre de comparer les résultats. Si la nouvelle version apparaît en navigation privée, mais pas dans votre fenêtre classique, cela constitue un indice intéressant. Le problème peut provenir de données conservées localement. Ce test ne constitue toutefois pas une preuve absolue.

Quatrième méthode : vider le cache du navigateur
Si les précédentes manipulations n'ont rien donné, vous pouvez supprimer les fichiers temporaires enregistrés par votre navigateur. La procédure varie selon le logiciel, mais elle se trouve généralement dans les paramètres de confidentialité, d'historique ou de gestion des données de navigation. Vous pouvez souvent choisir les catégories de données à supprimer. Attention à ne pas confondre cache et cookies ! Le cache conserve notamment des ressources destinées à accélérer la navigation. Les cookies servent à d'autres fonctions, comme mémoriser une session de connexion ou certaines préférences. Supprimer les cookies peut vous déconnecter de vos sites habituels. Pour un simple problème d'ancienne image ou de mise en page, il n'est généralement pas nécessaire de les effacer.

Cinquième méthode : tester depuis un autre appareil
Vous disposez d'un smartphone ? Profitez-en pour consulter votre site depuis cet appareil. Vous pouvez également comparer l'affichage depuis un autre navigateur. Si vous souhaitez pousser le diagnostic, essayez depuis une connexion différente, par exemple en utilisant le réseau mobile plutôt que votre connexion Wi-Fi. Ces comparaisons peuvent aider à déterminer si le problème concerne un appareil particulier ou un mécanisme plus éloigné. Attention cependant : changer de réseau ne garantit pas de contourner tous les caches.

Sixième méthode : faire vérifier le cache serveur ou CDN
Vous avez essayé plusieurs navigateurs et plusieurs appareils, mais l'ancienne version continue à apparaître ? Le problème peut provenir d'un cache situé côté serveur ou sur un service intermédiaire. Dans ce cas, il peut être nécessaire de procéder à une purge du cache concerné. Cette opération s'effectue généralement depuis l'administration du site, les outils d'hébergement ou l'interface du CDN. Elle doit être réalisée avec discernement, car vider certains caches peut temporairement augmenter la charge du serveur.

Si vous ne savez pas quel mécanisme est utilisé, mieux vaut contacter votre webmaster ou votre hébergeur. Inutile de supprimer toutes les données de votre ordinateur ou de jeter ce dernier par la fenêtre. Cela ne résoudra pas un problème situé à plusieurs centaines de kilomètres !

7. Un site bien conçu doit savoir gérer intelligemment son cache

Jusqu'ici, nous avons surtout abordé le cache du point de vue de l'internaute. Mais la gestion de ces mécanismes fait également partie du travail de conception et de maintenance d'un site internet. Un site correctement développé doit trouver un équilibre entre deux objectifs :

  • Afficher rapidement les informations
  • Permettre leur actualisation lorsqu'elles changent.

Cela suppose quelques bonnes pratiques techniques :

Adapter la durée du cache aux ressources

Toutes les données d'un site ne nécessitent pas les mêmes règles de conservation. Un logo qui change rarement peut bénéficier d'une mise en cache relativement longue. À l'inverse, certaines informations dynamiques doivent être actualisées beaucoup plus fréquemment. Il serait par exemple problématique qu'un site e-commerce affiche durablement un ancien prix ou une disponibilité incorrecte. La durée de conservation doit donc être adaptée à la nature des informations.

Prévoir le renouvellement des fichiers CSS et JavaScript

Lorsqu'un développeur modifie l'apparence ou le fonctionnement d'un site, il intervient souvent sur des fichiers CSS ou JavaScript. Or ces fichiers sont fréquemment conservés par les navigateurs. Une technique courante consiste à modifier leur adresse lorsqu'une nouvelle version est publiée.

Par exemple : style.css?v=1 Puis, après une modification : style.css?v=2

Le navigateur considère alors qu'il s'agit d'une nouvelle adresse et doit récupérer la ressource correspondante. Cette technique est appelée versionnement des ressources. D'autres méthodes consistent à intégrer directement une empreinte du contenu dans le nom des fichiers. Le principe reste le même : permettre aux navigateurs d'identifier les nouvelles versions sans renoncer aux avantages du cache. 

Actualiser les caches au bon moment

Sur certains sites, notamment ceux utilisant un système de gestion de contenu ou une application dynamique, il est possible de prévoir une invalidation automatique. Lorsqu'une information change, le système supprime ou renouvelle les copies devenues obsolètes. Cette approche évite d'attendre systématiquement l'expiration d'une durée de conservation. Elle demande cependant une configuration adaptée à l'architecture du site.

Protéger les contenus personnels

Dernier point, particulièrement important. Toutes les pages ne doivent pas être mises en cache de la même manière. Un espace client, un panier d'achat ou une page contenant des informations personnelles nécessitent des précautions particulières. Une mauvaise configuration d'un cache partagé pourrait, dans certaines circonstances, entraîner la diffusion d'informations destinées à un autre utilisateur. 

La gestion du cache ne concerne donc pas uniquement les performances. Elle participe aussi à la fiabilité et à la sécurité d'un site internet.

Le rôle du professionnel du Web

Chez Weblandes, nous considérons que la qualité d'un site ne se limite pas à son apparence. Ses performances, sa fiabilité et son comportement lors des mises à jour font également partie des éléments à considérer. La gestion des caches doit être pensée en fonction des technologies utilisées, du type de contenu et des besoins du site. L'objectif n'est pas de supprimer les caches à la moindre difficulté, mais de les configurer intelligemment. Car un cache efficace est un cache qui accélère le site sans empêcher les informations importantes d'être actualisées.

8. Conclusion : le cache, un allié parfois mal compris

Nous voilà arrivés au bout de notre exploration. Vous savez maintenant pourquoi une modification peut être parfaitement présente sur un serveur sans apparaître immédiatement sur votre écran. Vous avez également découvert que plusieurs mécanismes de cache peuvent intervenir simultanément : navigateur, système d'exploitation, serveur web ou réseau de diffusion de contenu. Ces dispositifs ne sont pas des anomalies. Ils sont au contraire essentiels pour rendre Internet plus rapide et plus efficace. Mais comme souvent en informatique, une technologie très utile peut aussi provoquer quelques incompréhensions lorsqu'on ignore son fonctionnement. Alors, la prochaine fois que votre webmaster vous annonce qu'une modification est en ligne et que vous ne voyez toujours rien, pensez à vérifier votre cache avant de conclure à un problème. Un simple rechargement forcé peut parfois suffire à faire apparaître les changements attendus.

Et si le problème persiste, votre prestataire pourra rechercher à quel niveau se trouve l'ancienne version.

En informatique, ce que vous voyez à l'écran n'est pas toujours exactement ce qui se trouve sur le serveur.
Et maintenant que vous connaissez le fonctionnement du cache, vous savez pourquoi !

Vous rencontrez des difficultés d'actualisation sur votre site internet ou souhaitez améliorer ses performances ?
L'agence Weblandes vous accompagne dans la conception, l'optimisation et la maintenance de vos sites web.

 

 

Rédaction : humaine, correction : IA, Médias IA

#cache #web #internet #mémoire #fonctionnement



expand_less