Internet Explorer 9 не игнорирует заголовки кеша

Я рву волосы из-за кэширования Internet Explorer 9.

Я установил серию файлов cookie из сценария perl в зависимости от значения строки запроса. Эти файлы cookie содержат информацию о различных вещах на странице, например о баннерах и цветах.

Проблема, с которой я столкнулся, заключается в том, что в IE9 он всегда, ВСЕГДА, будет использовать кеш вместо использования новых значений. Последовательность событий выглядит так:

  1. Посетите www.example.com/?color=blue
  2. Сценарий Perl устанавливает файлы cookie, Меня перенаправляют обратно на www.example.com
  3. Цвета синие, все как положено.
  4. Посетите www.example.com/?color=red
  5. Файлы cookie настроены, перенаправлены, цвета установлены на красный, все в норме
  6. Еще раз посетите www.example.com/?color=blue
  7. Perl Script запускается, куки переустанавливаются (я это подтвердил), но! IE9 извлекает все ресурсы из кеша, поэтому при перенаправлении все мои цвета остаются красными.

Итак, каждый раз, когда я посещаю новый URL-адрес, он получает свежие ресурсы, но каждый раз, когда я посещаю ранее посещенный URL-адрес, он извлекает их из кеша.

Следующие метатеги находятся в на example.com, что, как я думал, предотвратит использование кеша:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE"> 
<META HTTP-EQUIV="EXPIRES" CONTENT="0">

Для чего это стоит - я также пробовал

IE9, похоже, игнорирует ВСЕ эти директивы. Единственный раз, когда мне удалось добиться успеха в этом браузере, я использовал инструменты разработчика и убедился, что для него вручную установлено значение «Всегда обновлять с сервера»

Почему IE игнорирует мои заголовки и как я могу заставить его проверять сервер каждый раз?

11
задан Florent 20 February 2014 в 16:24
поделиться