Question

Existe-t-il un moyen de déterminer ou de forcer la re-mise en cache d'un fichier CSS si l'utilisateur utilise un ancien fichier?

Était-ce utile?

La solution

Le meilleur moyen de s'assurer que tout le monde recharge votre nouveau fichier est de changer son URL. Une façon raisonnable de le faire sans le renommer est d’utiliser une chaîne aléatoire:

<link rel='stylesheet' href='/mystyles.css?random=87365835'>

Cela consiste à utiliser un marteau-pilon pour casser un écrou et à contourner tous les mécanismes HTTP existants, mais cela fonctionnera absolument partout, alors que les autres techniques présentent toutes des réserves.

Modifier: @jitter: vous n'avez pas besoin de modifier l'URL automatiquement pour chaque demande. Vous pouvez le baser sur l'horodatage du fichier CSS, ou même simplement le modifier à la main lorsque vous le souhaitez. voulez vous assurer que le CSS est rechargé.

Autres conseils

Vous pouvez essayer d’éditer le serveur etags: http://developer.yahoo.com/performance/rules.html#etags

Mais la méthode préférée consiste probablement à renommer votre fichier CSS, par exemple avec la date ou le numéro de build, de manière à ce que les utilisateurs aient toujours le dernier.

Vérifiez cette solution au lieu d'utiliser xx.css? rand = 213213213

Quel est le moyen élégant de forcer les navigateurs à recharger les fichiers CSS / JS en cache?

Ou google pour le " versioning automatique " plus d'ajouter javascript ou css. Ou "versioning automatique des actifs"

Il utilise une approche automatique qui modifie le chemin de la partie URL en ajoutant des variables get.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top