Question

Il semble que IE6 ignore toute forme d'invalidation du cache envoyée via les en-têtes http. J'ai essayé de définir Pragma sur No Cache et de définir l'expiration du cache sur l'heure actuelle. Pourtant, dans IE6, riposter affichera toujours une version en cache d'une page. je travaille dessus.

Existe-t-il un en-tête HTTP spécifique qu'IE6 écoute également ?

Était-ce utile?

La solution

Cache-Control: private, max-age=0 devrait le réparer.Depuis l'ASP classique, cela se fait avec Response.Expires=-1.

Gardez à l'esprit lors des tests que le simple fait que votre serveur traite des pages avec la mise en cache désactivée ne signifie pas que le navigateur y obéira lorsqu'il aura une ancienne page en cache qu'il lui a été dit qu'il était acceptable de la mettre en cache.Videz le cache ou utilisez F5 pour forcer le rechargement de cette page.

De plus, dans les cas où le serveur diffuse du contenu mis en cache, vous pouvez utiliser Ctrl+F5 pour signaler au serveur de ne pas le servir à partir du cache.

Autres conseils

Tu dois faire attention.Si vous utilisez AJAX via XMLHttpRequest (XHR), les "recommandations" du cache définies dans l'en-tête ne sont pas respectées par ie6.

Le correctif consiste à ajouter un nombre aléatoire aux requêtes URL utilisées dans les requêtes AJAX.Par exemple:

http://test.com?nonce=0123 

Un bon générateur pour cela est la fonction UTC() qui renvoie une heure unique pour le navigateur de l'utilisateur...c'est-à-dire, à moins qu'ils ne jouent avec leur horloge système.

Avez-vous essayé de définir un ETag dans l'en-tête ?C'est un moyen assez fiable d'indiquer que le contenu a changé Spécification w3c & Wikipédia

Au-delà de cela, une méthode un peu plus grossière consiste à ajouter un paramètre de chaîne de requête aléatoire à la requête, tel que l'horodatage Unix actuel.Comme je l'ai dit, brut, mais IE6 n'est pas la bête la plus subtile

Une petite remarque :Par expérience, je sais qu'IE6 chargera Javascript à partir du cache même s'il est obligé de recharger la page via ctrl-f5.Donc si vous travaillez sur Javascript, videz toujours le cache.

La barre d’outils des développeurs Web IE peut énormément vous aider.Il y a un bouton pour vider le cache.

Contenu avec « Content-Encoding :gzip" est toujours mis en cache même si vous utilisez "Cache-Control :pas de cache"

http://support.microsoft.com/kb/321722

Vous pouvez également désactiver gzip uniquement pour IE6

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