Как настроить кэшируемость статических файлов в IIS? - PullRequest
3 голосов
/ 13 ноября 2008

У меня есть несколько статических изображений в папке на моем веб-сайте IIS 6, которые я хочу загрузить как можно меньше (чтобы сохранить пропускную способность). Я установил истечение срока действия контента через 30 дней. Что еще я могу сделать в IIS, чтобы увеличить кеширование в браузерах, прокси и шлюзах?

Например, добавить заголовок Cache-Control? Что-нибудь еще?

Ответы [ 2 ]

1 голос
/ 14 ноября 2008

Вот мой ответ на этот вопрос: «Истекает» в заголовке http для статического содержимого? как к

@ECHO OFF 
REM ---------------------------------------------------------------------------
REM Caching - sets the caching on static files in a web site
REM syntax 
REM     Caching.CMD 1 d:\sites\MySite\WWWRoot\*.CSS
REM 
REM   %1 is the WebSite ID
REM   %2 is the path & Wildcard - for example, d:\sites\MySite\WWWRoot\*.CSS
REM   _adsutil is the path to ADSUtil.VBS
REM ---------------------------------------------------------------------------

SETLOCAL
REM *******
REM SET THIS TO POINT TO adsutil.vbs - TYPICALLY c:\inetpub\adminscripts\adsutil.vbs
REM *******
SET _adsutil=D:\Apps\Scripts\adsutil.vbs

FOR %%i IN (%2) DO (
  ECHO Setting Caching on %%~ni%%~xi
  CSCRIPT %_adsutil% CREATE W3SVC/%1/root/%%~ni%%~xi "IIsWebFile"
  CSCRIPT %_adsutil% SET    W3SVC/%1/root/%%~ni%%~xi/HttpExpires "D, 0x69780"
  ECHO.
)

, который устанавливает значение кэширования для каждого файла CSS в корневом веб-каталоге на 5 дней, а затем запускает его так:

Caching.CMD 1 \site\wwwroot\*.css
Caching.CMD 1 \site\wwwroot\*.js
Caching.CMD 1 \site\wwwroot\*.html
Caching.CMD 1 \site\wwwroot\*.htm
Caching.CMD 1 \site\wwwroot\*.gif
Caching.CMD 1 \site\wwwroot\*.jpg

Вид болезненный, но выполнимый.

BTW - чтобы получить значение для HttpExpires, установите значение в графическом интерфейсе, а затем выполните

AdsUtil.vbs ENUM W3SVC/1/root/File.txt

чтобы получить нужное значение

1 голос
/ 13 ноября 2008

http://www.galcho.com/Blog/post/2008/02/27/IIS7-How-to-set-cache-control-for-static-content.aspx

Это сообщение в блоге, охватывающее следующее:

  1. Разрешить переопределение статического содержимого
  2. установить настройки кеша с помощью следующих команд
  3. Кэшируйте его на клиенте
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...