Votre question

IE 6 et la gestion du cache

Tags :
  • Tomcat
  • Programmation
Dernière réponse : dans Programmation
17 Novembre 2010 16:50:12

Salut.

j'ai déployé une appli en java sous tomcat 6.

Celle ci contient des jsp contenant des .js.


or l'autre jour, lors d'un redéploiement un des fichiers Js a changé.

Le client a du vider son cache pour éviter que IE (6) n'utilise l'ancien JS.

pourtant en local j'ai fait le test suivant (en regardant les entêtes HTTP échangées via ie HTTP headers:


chargement d'une page JSP incluant un JS

- premier appel
--> http 200 le fichier JS est téléchargé
- deuxième appel
--> http 304, NOT MODIFIED (le Js est pris dans le cache, jusque la tout est normal !)

je modifie le .js, et après redéploiement appels de la page et


--> http 200 le fichier JS est téléchargé


Cependant cela ne fait pas ça chez le client, il ne re-télécharge pas le .js.. quelqu'un a-t-il un début d'une ombre de réponse ?




Merci d'avance a@ tous ceux qui pourront m'aider.

Autres pages sur : gestion cache

a c 145 L Programmation
17 Novembre 2010 17:42:27

Le client aurait-il un proxy ?
m
0
l
17 Novembre 2010 17:44:12

je ne pense pas, faut vérifier.... si ya proxy ça change quoi, il gère son cache de manière différente, il ne se fie pas au "if-modified-sinceé" ?
m
0
l
Contenus similaires
a c 145 L Programmation
18 Novembre 2010 09:14:45

S'il y a un proxy entre le serveur et le PC client, le proxy ne se met pas forcément bien à jour, ce qui peut créer ce genre de soucis.
Mais sinon, tu peux ajouter les headers html pour éviter la mise en cache:
  1. <meta http-equiv="pragma" content="no-cache">
  2. <meta http-equiv="expires" content="0">
m
0
l
18 Novembre 2010 09:32:59

Je connais ces tags, ils vont empêcher la mise en cache de la jsp, pour le js, je suis pas du tout sur que ce soit le cas...



De plus, je ne veux pas éviter la mise en cache, sinon ça va trop ramer...


j'aimerais que, lors de l'appel a la ressource, elle soit rechargée si la ressource distante est plus récente que la ressource locale... bref, de la mise en cache (qui marche!)

Pour recharger le js a tout les coups je peux aussi inclure un paramètre aléatoire, mais ça ne me va pas non plus...(pas de mise en cache = ramage)
m
0
l
18 Novembre 2010 11:10:25

Quels sont les en-têtes retournées par ton serveur web quand tu fais une requête sur ce fichier ?
Il faut vérifier si tu as bien l'en-tête Cache-Control: max-age=X ou éventuellement Expires: X
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS