CactusCrew

CactusCrew
 
Déjouer la mise en cache des images

Par défaut, les images sont mises en cache par le navigateur. Mais voici une astuce pour forcer le rechargement d'une image dés qu'elle à été modifiée sur le serveur.

<img src="monImage.png?<?= filemtime('monImage.png')?>" alt="mon image" />
Ceci permet de rafraichir le cache lorsque l'image a été modifiée.
L'url de l'image comporte un argument qui est construit par le timestamp de la date de derniere modification du fichier.
Donc tant que l'image n'est pas modifée, le timestamp reste le même, et de par le fait, le cache navigateur rempli son rôle (economie de bande passante).
Par contre dés que l'image est modifiée, la date de modification change, et de par le fait, le paramètre timestamp également, ce qui a pour effet du coté du navigateur à chercher la nouvelle image.

 
PDF
« retour à l'accueil
Commentaires
1.   William Rey  |  mercredi 22 octobre 2008 à 21:35

Excellent truc, simple, efficace et qui n'est pas limité à PHP. Le simple fait d'utiliser la date de dernière modification derrière le "?" peux s'utiliser en JAVA ou .NET. C'est complétement générique. Félicitations!

 
2.   Jymi  |  jeudi 20 novembre 2008 à 13:56

Cette ruse est excellente et mériterait d'apparaître dans de nombreuses documentations de programmation.
Merci !

 
« retour à l'accueil
Trackbacks

Aucun trackback.

Les trackbacks pour ce billet sont fermés.

 
Ajouter un commentaire

Les commentaires pour ce billet sont fermés.