Pergunta

Parece que o IE6 ignora qualquer forma de invalidação de cache enviada por meio de cabeçalhos http. Tentei definir Pragma como No Cache e definir Cache Expiration para a hora atual, mas no IE6, o retorno sempre exibirá uma versão em cache de uma página. estou trabalhando.

Existe um cabeçalho HTTP específico que o IE6 também escuta?

Foi útil?

Solução

Cache-Control: private, max-age=0 deveria consertar isso.No ASP clássico isso é feito com Response.Expires=-1.

Ao testar, lembre-se de que só porque seu servidor está servindo páginas com o cache desativado não significa que o navegador obedecerá quando tiver uma página antiga em cache que foi informada de que estava tudo bem para armazenar em cache.Limpe o cache ou use F5 para forçar o recarregamento da página.

Além disso, para os casos em que o servidor está servindo conteúdo em cache, você pode usar Ctrl+F5 para sinalizar ao servidor para não servi-lo a partir do cache.

Outras dicas

Você deve ser cuidadoso.Se você estiver usando AJAX via XMLHttpRequest (XHR), as "recomendações" de cache definidas no cabeçalho não serão respeitadas pelo IE6.

A correção é anexar um número aleatório às consultas de URL usadas nas solicitações AJAX.Por exemplo:

http://test.com?nonce=0123 

Um bom gerador para isso é a função UTC() que retorna um horário único para o navegador do usuário...isto é, a menos que eles mexam no relógio do sistema.

Você já tentou definir uma ETag no cabeçalho?Eles são uma forma bastante confiável de indicar que o conteúdo mudou Especificação w3c & Wikipédia

Além disso, uma maneira um pouco mais grosseira é anexar um parâmetro de string de consulta aleatório à solicitação, como o carimbo de data/hora unix atual.Como eu disse, é bruto, mas o IE6 não é a fera mais sutil

Uma pequena nota:Por experiência, sei que o IE6 carregará o Javascript do cache, mesmo que seja forçado a recarregar a página via ctrl-f5.Portanto, se você estiver trabalhando em Javascript, sempre esvazie o cache.

A barra de ferramentas do desenvolvedor web do IE pode ajudar imensamente com isso.Existe um botão para limpar o cache.

Conteúdo com "Codificação de conteúdo:gzip" é sempre armazenado em cache, embora você use "Cache-Control:sem cache"

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

Você também pode desativar o gzip apenas para o IE6

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top