Как установить дату истечения срока действия или максимальный возраст в заголовках HTTP для статических ресурсов в IIS - PullRequest
45 голосов
/ 06 апреля 2011

Я использую IIS 6 и IIS 7 в качестве веб-сервера.

После запуска Скорость страницы Google в Интернете , он отмечает, чтоЯ должен быть: Setting an expiry date or a maximum age in the HTTP headers for static resources instructs the browser to load previously downloaded resources from local disk rather than over the network.

И в нем перечислено много простых изображений , моих файлов JavaScript и таблиц стилей .

Как мне установить эту дату истечения срока действия для этих статических файлов ?Я думал, что это было сделано автоматически браузером?

Ответы [ 3 ]

29 голосов
/ 06 апреля 2011

Использование кэширования в браузере:

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

http://code.google.com/speed/page-speed/docs/caching.html#LeverageBrowserCaching

Чтобы установить дату истечения или максимальный возраст в заголовках HTTP для статических ресурсов

Открыть диспетчер IIS-> НажмитеВаш сайт-> Щелкните заголовки ответа HTTP на домашней странице-> Щелкните «Установить общие заголовки» на панели «Действия» -> «Проверить срок действия веб-содержимого» -> «Установить через 7 дней» (как указано в анализе скорости страницы «Укажите срок действия вкак минимум одну неделю в будущем для следующих ресурсов "

http://technet.microsoft.com/en-us/library/cc770661%28WS.10%29.aspx

3 голосов
/ 16 января 2012

Иногда инструмент Google жалуется, что если вы не установили максимальный возраст Cache-Control и заголовок Expires, IIS просто устанавливает максимальный возраст, который на самом деле должен работать. Подтвердить это можно с помощью chrome или firebug, просмотрев панель Net Debug и проверив заголовки ответов.

2 голосов
/ 11 июня 2014

установка даты истечения срока действия для статических файлов должна быть сделана в файле Web.config для IIS.Я не очень разбираюсь в ISS, но нашел это в Интернете

http://www.iis.net/learn/application-frameworks/install-and-configure-php-applications-on-iis/translate-htaccess-content-to-iis-webconfig

<caching>
   <profiles>
     <add extension=".php" policy="DisableCache" kernelCachePolicy="DisableCache" />
     <add extension=".html" policy="CacheForTimePeriod" kernelCachePolicy="CacheForTimePeriod" duration="14:00:00:00" />
   </profiles>
</caching>

Приведенный выше код включит кэширование файлов .html максимум на 14 дней.Для файлов .php убедитесь, что кэширование не выполняется.

Подробнее см. http://www.iis.net/configreference/system.webserver/staticcontent/clientcache

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