Я должен установить срок действия моих статических файлов моего приложения в IIS 7. Используя диалоговое окно ниже: Я установил его на 10 дней.
Но когда я смотрю на свой анализ страницы с помощью надстройки PageSpeed в Chrome, я вижу, что у файлов нет срока действия.
Нужно ли мне делать что-то еще в конфигурации моего приложения?
Посмотрите на элемент staticContent в web.config:
<system.webServer>
<!-- StaticContent requires that the machine config section be unlocked: appcmd unlock config /section:staticContent-->
<staticContent>
<clientCache cacheControlCustom="private" cacheControlMode="UseMaxAge" cacheControlMaxAge="0.02:00:00" />
</staticContent>
</system.webServer>
http://msdn.microsoft.com/en-us/library/ms689506%28v=vs.90%29.aspx
http://www.iis.net/configreference/system.webserver/staticcontent/mimemap
это настройка в IIS контролирует истечение срока возвращаемой страницы, а не другие ресурсы, которые страница включает и пытается загрузить, в вашем случае внешние файлы JS. Если вы проверите тег срока действия для страницы, он должен показать дату истечения срока действия.
Рассматриваемый параметр IIS не будет управлять истечением срока действия других файлов, которые не являются непосредственно частью потока ответов. Почему с файлами JS вы все равно пытаетесь истечь через 10 дней? Браузер должен распознать, что это уже не текущая версия, и загрузит последнюю, в противном случае отобразится HTTP 304 Not Modified
и будет использовать локально кэшированную копию.