要使用版本字符串破坏图像缓存,我使用了以下内容:
<system.webServer>
<rewrite>
<rules>
<rule name="PNG Versioning">
<match url="(.*).png" />
<action type="Rewrite" url="{R:0}" appendQueryString="true" />
<conditions>
<add input="{QUERY_STRING}" pattern="ver=20190327" negate="true"/>
</conditions>
</rule>
</rules>
</rewrite>
</system.webServer>
但是更改版本字符串的值仍然会在304
。
如果我手动将版本字符串添加到图片网址,则每次更新版本字符串时,我都会按预期获得200
响应代码。
那么,为什么不像其他方法那样重写url-rewrite工作?
答案 0 :(得分:0)
我得到了答案。这种方式无法实现缓存清理,因为:
当浏览器请求资源时:
如果资源在缓存中,它会再次发送GET请求来获取文件,但是有一些额外的标题
if-none-match:7dee9bc1f8cf1:0
if-modified-since:星期二,2014年11月4日07:34:16 GMT
这些额外的标题指示服务器仅在上述条件失败时才返回文件。