Я хочу включить кеш для статического содержимого моего сайта.Я нашел этот метод, используя опцию управления кэшем IIS, которая, как мне кажется, работает на стороне сервера:
<caching>
<profiles>
<add extension=".js" policy="CacheUntilChange" kernelCachePolicy="DontCache" />
<add extension=".css" policy="CacheUntilChange" kernelCachePolicy="DontCache" />
</profiles>
</caching>
Также я нашел это решение для кэша статического содержимого на стороне клиента:
<staticContent>
<clientCache cacheControlMaxAge="7.00:00:00" cacheControlMode="UseMaxAge" />
</staticContent>
После добавления обоихИз приведенных выше кодов я очистил историю и использовал хард-обновление.Но когда я проверяю вкладку сети в консоли Chrome, время загрузки статического контента по-прежнему в секундах (не из пользовательского кэша).Я должен сказать, что флажок для отключения кэша также не установлен в консоли разработчика.
Редактировать: После обновления kernelCachePlicy
до CacheUntilChange
Я использовал netsh http show cachestate
для проверки состояниякэша, и это пример вывода, но браузер по-прежнему загружает файл с сервера, а не из локального кэша.
URL: [PTAH TO A PNG FILE]
Status code: 200
HTTP verb: GET
Cache policy type: User invalidates
Creation time: 2017.11.1:20.41.18:0
Request queue name: MyPool
Content type: image/png
Content encoding: (null)
Headers length: 244
Content length: 1507
Hit count: 5
Force disconnect after serving: FALSE