Как поручить веб-браузерам НЕ кэшировать страницы? - PullRequest
3 голосов
/ 04 февраля 2009

У меня проблема с кэшированием в Internet Explorer 6.0, и я хочу дать указание браузеру , а не кэшировать запрашиваемую им страницу.

Дополнительная информация: На моей странице есть случайный токен, который не позволяет перезагрузить сайт и публиковать одну и ту же информацию дважды или более.

Если вы сейчас добавили в закладки эту страницу, браузер должен получить указание обновить сайт каждый раз, когда он запрашивает его.

Firefox 3.0.5 делает это правильно, но IE 6.0 хранит случайный токен в кэше.

Я включил следующие метатеги на затронутую страницу:

<meta http-equiv="cache-control" content="no-cache, must-revalidate">
<meta http-equiv="expires" content="0">
<meta http-equiv="pragma" content="no-cache">

Есть идеи? Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 04 февраля 2009

Это довольно хорошо задокументированная проблема в Google, и, возможно, она несколько раз повторяется здесь, но вот мой стандартный блок (C #):

Response.AppendHeader("Cache-Control", "no-cache"); //HTTP 1.1
Response.AppendHeader("Cache-Control", "private"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "no-store"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "must-revalidate"); // HTTP 1.1
Response.AppendHeader("Cache-Control", "max-stale=0"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "post-check=0"); // HTTP 1.1 
Response.AppendHeader("Cache-Control", "pre-check=0"); // HTTP 1.1 
Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.0 
Response.AppendHeader("Expires", "Wed, 09 Jun 1993 00:00:00 GMT"); // HTTP 1.0
0 голосов
/ 04 февраля 2009

Проверьте, какие HTTP-заголовки отправляет ваш сервер, они могут переопределить то, что находится в разделе meta в HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...