Cache busting
C
Definition complete
Le cache busting est une technique permettant de forcer le rechargement des ressources mises en cache par le navigateur lorsqu'elles sont modifiées. Sans cette technique, les visiteurs pourraient continuer à voir d'anciennes versions de vos fichiers CSS, JavaScript ou images malgré vos mises à jour.
Le principe consiste à modifier l'URL de la ressource à chaque nouvelle version, généralement en ajoutant :
- Un paramètre de version : style.css?v=2.1.0
- Un hash du contenu : style.a7b3c9d2.css (généré automatiquement par les bundlers)
- Un timestamp : script.js?t=1706054400
Les outils de build modernes (Webpack, Vite, Parcel) gèrent automatiquement le cache busting en générant des noms de fichiers uniques basés sur le contenu. Cette approche est plus fiable que les paramètres d'URL car certains CDN ignorent les query strings.
Une bonne stratégie de cache busting permet de bénéficier d'un cache longue durée (1 an) tout en garantissant que les modifications sont immédiatement visibles par tous les utilisateurs.
Exemples pratiques
- Versioning manuel : <link href="style.css?v=1.2.3"> incrémenté à chaque mise à jour
- Hash automatique Vite : génère main.f5d8e2a1.js avec hash unique basé sur le contenu
- WordPress : wp_enqueue_style('theme', 'style.css', array(), '1.0.0') ajoute automatiquement ?ver=1.0.0
A quoi sert Cache busting ?
- Deploiement de nouvelles versions : forcer le rechargement du CSS/JS apres une mise a jour majeure du site
- Correction de bugs urgents : s'assurer que le correctif est visible immediatement par tous les utilisateurs
- Refonte graphique : garantir que les nouveaux visuels remplacent les anciens sans delai
- A/B testing fiable : eviter que le cache ne fausse les resultats en servant d'anciennes versions
- Mise a jour de securite : deployer un patch JavaScript critique avec propagation immediate
Cache busting en pratique chez 123web
Chez 123web, nous implémentons des stratégies de cache busting automatisées lors de chaque déploiement, garantissant que vos mises à jour sont immédiatement visibles tout en conservant d'excellentes performances de cache.