首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ETags,IIS7,内核缓存策略(enableKernelCache)

ETags,IIS7,内核缓存策略(enableKernelCache)
EN

Stack Overflow用户
提问于 2009-12-22 19:54:00
回答 1查看 4.6K关注 0票数 6

两个部分的问题(部分是密切相关的):使用IIS7使用的默认OOTB IIS7策略,为什么我们在浏览页面时看不到If- as Match/304交互呢?

例如,为空缓存请求返回的标头是:

代码语言:javascript
复制
Content-Type    image/png
Last-Modified   Thu, 03 Dec 2009 15:51:56 GMT
Accept-Ranges   bytes
Etag    "a8a0628a3074ca1:0"
Server  Microsoft-IIS/7.0
X-Powered-By    ASP.NET
Date    Tue, 22 Dec 2009 19:47:36 GMT
Content-Length  1780

...and对页面的后续访问不会为图像生成304次往返吗?

此外,用于applicationHost的默认IIS7文件有以下(1):

代码语言:javascript
复制
   <caching enabled="true" enableKernelCache="true">
   </caching>

enableKernelCache='true'是否扩展到所有静态文件,从而使您不必显式注册扩展以将CacheUntilChange授予内核策略(2):

代码语言:javascript
复制
<caching>
  <profiles>
    <add extension=".gif" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
    <add extension=".png" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
    <add extension=".js" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
    <add extension=".css" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
    <add extension=".jpg" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
    <add extension=".jpeg" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
  </profiles>
</caching>

(1) %systemroot%\System32\inetsrv\config\applicationHost.config

(2) http://labs.episerver.com/en/Blogs/Per/Archive/2009/3/Configuring-cache-expiration-on-IIS-7/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-22 20:41:42

ETags和相关的If- is匹配/If修改的处理在某种程度上依赖于浏览器。你可以尝试一些不同的浏览器,看看会发生什么--一般来说,如果你不设置一个明确的过期时间,我希望看到304,就像你说的那样。

对于内核缓存,默认情况下对静态文件启用它。为了帮助了解正在发生的事情,我发现运行以下命令很有帮助:

代码语言:javascript
复制
netsh http show cachestate

它将显示当前缓存中的文件的信息。

请记住,在内核缓存文件之前,通常必须在特定的时间窗口内引用几次文件。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1948727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档