我希望缓存静态内容,但浏览器一直请求缓存

我希望缓存静态内容,但浏览器一直请求缓存

我有一个 IIS 7.5 网站,其中启用了 javascript 和 css 内容目录的缓存。对这些文件的所有请求都使用带有应用程序版本号的查询字符串,所以我只希望它永久缓存。但我无法让它工作

在 IIS 中,我已经设置了缓存,并且我看到 css 文件的响应带有 HTTP 标头“Cache-Control:max-age=31536000”。

但是,当我浏览页面时,浏览器不断请求文件。服务器响应 304 - Not Modified,这很好,但我想完全避免往返。

浏览器请求一直包含标头“Cache-Control: max-age=0”。我不知道这是否是一个有用的线索

答案1

我考虑过删除这个问题,但后来决定把我的解决方案放在这里,希望对某些人有帮助。从我的评论中复制:这是一个开发人员问题,而不是 IIS 问题,所以我的整个问题有点像是转移注意力的借口。代码中有一些 javascript location.reload(true) 强制重新请求数据。

相关内容