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