Comment Empêcher les Navigateurs à partir de la mise en Cache des Fichiers CSS?
Quand je fais une page, lien à un fichier CSS, et de l'ouvrir dans un navigateur, ça fonctionne très bien.
Mais si un changement et d'actualiser la page à nouveau entre les très courtes périodes de temps, le changement n'est pas pris en compte. Mais après quelque temps, lorsque j'actualise la page, les modifications apparaissent.
Donc, en quelque sorte, le navigateur conserve le fichier CSS en cache et expire après quelque temps. Comment faire le cache du navigateur, pas de CSS ou un fichier HTML.
Il serait mieux si je peux le bloquer sur un domaine particulier.
Je suis sur Ubuntu, à l'aide de Chrome et de Firefox, en essayant d'éviter les navigateurs à partir de la mise en cache des fichiers CSS sur 'localhost'... Comment faire...
Merci...
OriginalL'auteur Arjun Bajaj | 2011-11-30
Vous devez vous connecter pour publier un commentaire.
Vous pouvez ouvrir les Outils de développement en appuyant sur
Ctrl+Shift+J
et ensuite vous trouverez une icône de roue dentée en bas à droite. Lorsque vous cliquez dessus, vous devriez voir une option pour désactiver la mise en cache.ok, j'ai enlevé pagespeed et il fonctionne sans désactiver le cache, mais il semble que ce soit toujours la bonne approche. Donc je vais marquer cette réponse est acceptée... merci...
Ne vois pas la cog.
Il semble à présent être le "3 points" icône en haut à droite de outils de dev. Cliquez sur et sélectionnez Paramètres.
OriginalL'auteur Ragnis
Quelque chose d'aussi simple que cela devrait fonctionner:
Il suffit de remplacer
{CURRENT_TIMESTAMP}
avec le timestamp réelle dans votre code côté serveur. Cela rend le navigateur pense que c'est un nouveau fichier en raison de la chaîne de requête et il sera téléchargé à nouveau. Vous pouvez également utiliser la réelle date et heure de modification du fichier (filemtime('/path/to/css/screen.css')
si vous utilisez PHP) qui devrait éviter des téléchargements inutiles.?
... permettez-moi donc de désinstaller pagespeen et essayez de nouveau... merci pour l'idée, bien que... elle est très simple et élégant dans la nature...OriginalL'auteur Wesley Murch
Il serait utile de savoir comment le site web est hébergé, comme vous pouvez le configurer dans la plupart des serveurs web.
Aussi, c'est une bonne idée d'introduire un contournement du cache mécanisme qui permettrait de modifier les liens vers les fichiers CSS en question lorsque vous modifiez le fichier CSS contenu des fichiers. Les navigateurs ne puis rechargez le fichier CSS parce que le HTML fait référence à une URL différente.
Un bon exemple d'un contournement du cache mécanisme est le ruby on rails 3.1 asset pipeline qui a également minifies fichiers et les fichiers gzip si le navigateur prend en charge:
Rails 3 - Asset Pipeline -- Que signifie pour moi?
http://2beards.net/2011/11/the-rails-3-asset-pipeline-in-about-5-minutes/
OriginalL'auteur hendrikswan
L'apparemment peu élégante, mais solide comme le roc approche est de donner à l'actif d'un nouveau nom, lorsque les changements de contenu. Cela résout le problème pour tous les utilisateurs, pas seulement vous:
Ou peut-être (mais c'est plus d'une douleur à changer dans un IDE, et provoque parfois des problèmes sans rapport avec la mise en cache):
Rien d'autre ne fonctionne tout aussi bien dans la production à grande échelle d'environnements, où des millions de copies d'un ancien fichier css peut-être assis dans divers intermédiaires ou les caches du navigateur. Certains clients ignorer les en-têtes, et vous ne voulez pas vraiment de mise en cache détourne de toute façon, au moins pas dans la production.
En développement, vous pouvez appuyer sur Ctrl+Maj+J (Chrome) et de désactiver la mise en cache.
OriginalL'auteur Bryce