Je gère un site Web pour une petite entreprise. Les sites Web contiennent principalement du texte et des images. Chaque fois que je mets à jour le site Web en remplaçant une image ou en mettant à jour le css, il n'est pas mis à jour sur les navigateurs d'autres personnes car il a été mis en cache. J'ai trouvé un moyen de contourner ce problème en ajoutant un numéro de version où je lie ma feuille de style, mais cela ne s'applique pas aux images. Quelle est la manière la plus simple de contourner ce problème?
J'ai fait beaucoup de recherches sur le Web et sur le stackoverflow, mais ce sont toutes des solutions compliquées. Il doit y avoir un meilleur moyen.
Pour être clair, je sais que je peux vider le cache de mon navigateur. Je recherche une solution qui fonctionne pour tous ceux qui accèdent à mon site Web.
3 Réponses :
Vous pouvez renommer vos images (de préférence) automatiquement lorsque vous souhaitez éviter leur mise en cache, en ajoutant un numéro de version à leur nom. Si vous avez quelque chose qui fait cela automatiquement, vous contournez le problème de leur mise en cache.
Si vous souhaitez conserver le nom de vos images, vous ne pouvez effectuer la modification que temporairement.
Vous pouvez ajouter ces balises meta et cela forcera une page à se recharger depuis le serveur à chaque rechargement. Cependant, vous devez comprendre que cela pourrait entraîner une utilisation beaucoup plus importante des données pour vous et vos utilisateurs.
onClick="location.reload(true);"
Si vous avez un lien ou un bouton de rechargement sur votre page html, vous pouvez l'ajouter attribuez-lui pour forcer un rechargement à partir du serveur. Le paramètre "true" est ce qui force un rechargement complet au lieu d'un rechargement du cache.
<meta http-equiv=âPragmaâ content=âno-cacheâ> <meta http-equiv=âExpiresâ content=â-1â³> <meta http-equiv=âCACHE-CONTROLâ content=âNO-CACHEâ>
Essayez de contrôler les versions (? version
) des fichiers pour éviter la mise en cache du navigateur.
ce sera comme filename.jpg? v1
filename.jpg?v2
Ou si vous remplacez fréquemment des fichiers, essayez d'ajouter l'horodatage actuel pour chaque chargement de page
En php,
filename.jpg? = time ()?> "
où time ()
est l'horodatage actuel
Cela signifie que vous ne faites que changer les URL à chaque fois.
ne pas mettre en cache l'image, le désactiver pour forcer un rechargement à chaque fois
Nous écrivons l'année 2013 ... css-tricks.com/can-we -empêcher-css-cache