Кэш-контроль в IIS6 не работает

Я использую IIS 6 и добавил заголовок Cache-Control: no-cache в консоли управления IIS для всего веб-сайта. Однако при проверке возвращенного содержимого с помощью fiddler я все еще вижу, что Cache-Control: private отправляется обратно в браузер вместе с ответом. No Cache-control: кэш не отправляется... Есть идеи, почему?

С другой стороны, когда я использовал метод EndRequest в Global.asax и установил:

protected void Application_EndRequest(Object sender, EventArgs e)
{
    HttpContext.Current.Response.CacheControl = "no-cache";
}

Я видел следующие заголовки в ответе HTTP:

Cache-Control: no-cache
Pragma: no-cache
Expires: -1

Но у меня много приложений, и я хотел бы установить без кеша в одном месте, например, в IIS.

Спасибо, Павел


person dragonfly    schedule 27.10.2010    source источник
comment
В основном, что я заметил несколько секунд назад, так это то, что заголовки Cache-control прекрасно добавляются к любому содержимому css, js и т. д., но не к ответам aspx:/   -  person dragonfly    schedule 27.10.2010


Ответы (1)


я знаю только одну 100% технику без кеша - генерировать "случайный" параметр, например. 'myscript.aspx?myparam1=val1&myparam2=va21&...&r='+Math.random();

person heximal    schedule 27.10.2010
comment
Что, если у меня есть страница index.aspx, которая является точкой входа в мое приложение (я недавно изменил ее, и теперь у меня полно проблем), а пользовательские браузеры ПРОДОЛЖАЮТ кэшировать эту страницу? Это не сработает. Вы можете взглянуть на мой предыдущий вопрос: stackoverflow.com /questions/4024847/frames-caching-issue-on-iis Спасибо :) - person dragonfly; 27.10.2010