Jump to content

Forcer la remise en cache d'un fichier JS


Recommended Posts

J'ai fait des modifications critiques sur un fichier JavaScript : elles ne seront actives que si l'utilisateur vide son cache.

Y a t'il un moyen de dire au navigateur que l'ancienne version du fichier a expiré ?

Link to post
Share on other sites

Malheureusement avec les merdes que IE fait avec le cache, il n'y a pas de moyen fiable pour ça, sauf à changer l'url d'appel du JS

Link to post
Share on other sites

Pour signifier une nouvelle version je mets un paramètre à mon fichier

fichier.js?version=1.2

et je fais varier le numéro de version, ça permet de forcer la mise en cache

Link to post
Share on other sites

Si on veut optimiser au maximum le chargement des fichiers (js et css), la meilleure solution c'est d'intégrer soit dans le nom du fichier, soit via un paramètre le md5 du fichier. On est sûr à chaque livraison que si le fichier est modifié il sera téléchargé par le navigateur, sinon il utilisera la version en cache, pour peu qu'on est appliqué des expire headers lointains.

Personnellement j'utilisais cette technique manuellement pendant des années (à savoir à chaque modification d'un fichier js je changeais manuellement le paramètre passé, par exemple script.js?1234783). Depuis quelques temps le déploiement et la modification se font automatiquement via un script ant qui permet de concaténer, compresser et renommer les fichiers js et css.

Link to post
Share on other sites

@Big06: par script ant tu parles de Apache ant ? ou d'un autre ? Merci de donner plus d'infos s'il ne s'agit pas de apache ant.

++

Patrick

Link to post
Share on other sites

_AT_Big06: par script ant tu parles de Apache ant ? ou d'un autre ? Merci de donner plus d'infos s'il ne s'agit pas de apache ant.

++

Patrick

non il s'agit bien d'apache ant :)

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...