Як змінити заголовок HTTP кеш контроль, під час використання служб IIS


Загальні відомості


Веб-адміністраторам, які використовують інформаційних служб Інтернету (IIS), можливо, потрібно регулярно, вимкнути кешування вмісту, який часто змінюється. У цій статті описується процес встановлення значення заголовок HTTP Кеш контроль за допомогою Active Server Pages (ASP), а також властивість метабази CacheControlCustom.

Додаткові відомості


При роботі із вмістом, що часто зміни, можна визначити, який вміст можна кешування даних і те, що неможливо, і, якщо клієнт, так і проксі-сервер слід кешування вмісту. Ці параметри можна вказати в IIS через CacheControlCustom властивості, які можна встановити для всього сервера, певного веб-сайту або певного фізичного чи віртуального каталогу. Якщо ця властивість, повертає заголовки HTTP, які подібні до наведених нижче:
HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Cache-Control: <CACHE SETTING>Content-Type: <type>/<subtype>Content-Length: <size of content>
Значення параметра кеш визначається специфікації HTTP/1.1.

Зазвичай використовуються протокол HTTP/1.1-кеш контроль заголовок значення

У документі RFC 2616, специфікації HTTP/1.1 визначає, кілька значень Cache-Control заголовка. У наведеному нижче списку, містить кілька значень частіше, які використовуються.
  • Спільні: може кешування HTTP-відповідь на будь-яких кеш. Наприклад, проксі-сервер або клієнт може кешувати відповідь. Це дозволяє, спільний доступ до вмісту всіх користувачів, які використовують однакові проксі-сервер.
  • Приватна: повідомлення у відповідь, призначена для клієнтів і не має бути кешування спільного кеша. Наприклад, проксі-сервер слід кешування відповідь, незважаючи на те, що клієнт, можна. Це дозволяє, клієнт для підтримки, кешування версію, під час іншим клієнтам, що використовують однакові проксі-сервер, підтримувати різні кешовані версії.
  • Ні, кеш: немає кеш весь шлях потрібно зберігати кешовану копію відповідь. Це дозволяє вказати, що ні клієнта або проксі-сервер відповість подальші запит на вміст за допомогою кешування версії.

Кеш контроль властивості

Нижче наведено приклади, визначте декілька способів, щоб вказати значення:

На сторінці

Використання Active Server Pages (ASP), вимикає такий код ASP, кешування певної сторінки:
<% @Language="VBScript" %><% Response.CacheControl = "no-cache" %>
Зверніть увагу: цей код потрібно вставити на початок сторінки, якщо ввімкнуто буферизації, тому, що є внесення змін, заголовки HTTP.

Для папки

Нижче наведено приклади, встановіть значення параметра Cache-Control папку або віртуальний каталог з назвою "Зображення" на веб-сайт за промовчанням:
  • Використання Adsutil.vbs:
    1. Відкрийте командний рядок і переходу до C:\InetPub\AdminScripts папки.
    2. Виконайте таку команду:
      CSCRIPT ADSUTIL. VBS-SET W3SVC/1/КОРЕНЯ/зображень/CacheControlCustom "ні кеш"
  • З використанням ADSI, сценарії:
    1. У блокноті, введіть ADSI такий код:
      Option ExplicitDim objCacheSet objCache = GetObject("IIS://localhost/w3svc/1/root/images")objCache.CacheControlCustom = "no-cache"objCache.SetInfo
    2. Збережіть файл як Disablefolder.vbs, що в папці C:\InetPub\AdminScripts і закрийте Блокнот.
    3. У командному рядку змінити папку "C:\InetPub\AdminScripts".
    4. Виконайте таку команду:
      CSCRIPT DISABLEFOLDER. VBS

ПОСИЛАННЯ

Щоб отримати додаткові відомості про цей розділ див. такі статті бази знань Майкрософт:
247389 IIS: те, як вимкнути кешування MIME з певних типів
Крім того, див. розділ 14,9 специфікації HTTP/1.1 в документі RFC 2616 за такою адресою:
RFC 2616 Протокол передавання гіпертексту — HTTP/1.1.