在我的场景中,我有一个 aspx 页面,其中包含一些 .js 文件的链接。
我观察到的是,即使我在 web.config 中添加了以下设置,有时我的浏览器也会返回 200 响应
<customHeaders>
<clear />
<add name="Expires" value="Sun, 07 Apr 2047 00:00:00 GMT" />
<add name="Cache-Control" value="max-age=5"/>
</customHeaders>
据我了解,除非 Etags 发生更改,否则应从缓存中检索文件并因此返回 200 响应。
在我的 200 个响应头中
最后修改时间 = 2012 年 2 月 23 日星期四 10:02:49 GMT
Etag =“82f46e4c12f2cc1:0”
在我的请求标头中
If-Modified-Since = 2012 年 2 月 23 日星期四 10:02:49 GMT
If-None-Match = "80aa474c12f2cc1:0"
我知道
If-None-Match != Etag
然后我们应该得到 200 响应。理想情况下,如果 Etag 仅从 Lastmodified 日期生成,那么无论如何它都不应更改。但您也可以看到,它会自动更改。这意味着 Etags 有变化的趋势。
问题:我们如何控制这种修改?特别是通过 web.config。