Gro*_*fit 27 iis etag caching iis-7.5 http-headers
我知道很多次都会问这个问题,但大多数问题都发生在2009-2010.
我很肯定一段时间我正在努力删除它们,但是我现在找不到任何方法将它们删除.
那么这个领域有没有进步?微软让IIS无法轻松配置这些标头似乎很疯狂.
目前已经尝试过:
我听说有一个ISAPI过滤器可以删除它们,但是我无法在任何地方找到它,并且没有从头开始编写的经验,但可能最终成为唯一的方法.
这就是为什么我想删除所有内容的Etags的原因.我让客户端缓存所有内容(过期和最后修改),所以一旦从服务器获取静态文件,它就永远不需要再次查询服务器,直到它过期.就像使用Etags一样,您仍然需要向服务器请求每个文件,以确定标记是否仍然匹配.因此,使用客户端缓存只会请求您需要的内容.
我还有一个版本控制系统,所以当发生变化时,静态内容会被引用为my.js?12345而不是my.js?12344.无论如何,重点是我目前认为删除Etags将大大改善我当前项目的一个瓶颈.
Nat*_*Fox 53
您可以使用IIS Rewrite Module 2.0删除ETag.以下重写规则应该这样做:
<rewrite>
<outboundRules>
<rule name="Remove ETag">
<match serverVariable="RESPONSE_ETag" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>
Run Code Online (Sandbox Code Playgroud)
Vin*_*rst 12
对于那些在寻找相同解决方案但是对于IIS 8或IIS 8.5时遇到此答案的人来说,这就是我想出的.感谢blogs.iis.net上的这篇文章,指出我正确的方向.
参考:IIS文档网站上的clientCache.
在您的web.config中,添加:
<configuration>
...
<system.webServer>
...
<staticContent>
<clientCache setEtag="false"/>
</staticContent>
...
</system.webServer>
...
</configuration>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
14756 次 |
最近记录: |