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

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

После запуска скорости страницы в Интернете он замечает, что я должен быть: 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 и таблицы стилей.

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

Ответ 1

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

Установка даты истечения срока действия или максимальной возраста в заголовках 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

Ответ 2

Иногда инструмент google жалуется, если вы не устанавливаете как максимальный возраст Cache-Control, так и заголовок Expires, IIS просто устанавливает максимальный возраст, и это должно быть хорошо. Вы можете подтвердить, используя хром или firebug, и посмотрите на панель Net Debug и проверите заголовки ответов.

Ответ 3

время истечения срока действия для статических файлов должно быть выполнено в файле 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