答案1
我发现,如果您通过后退按钮或链接浏览某个页面,Chrome 不会发送 max-age=0 标头,并且通常(如果另一端的 apache 服务器配置了缓存)会使用该页面的缓存版本。
但是,当您直接在地址栏中输入 URL(例如 www.example.com/abcd/index.html)然后按 时Return,Chrome 将始终发送Cache-Control: max-age=0
标头,从而绕过缓存。
答案2
可以使用用户脚本(ala greymonkey)或扩展程序修改 Chrome 发送到网络服务器的标头。以下是一个应该可以使用的扩展程序:修改头
根据介绍和截图,添加这样的标头cache-control max-age=1000
应该相对简单。它还支持域白名单,以防止标头被发送到特定网站。您可能需要在 chrome://flags 中启用某些实验才能完成这项工作。
答案3
浏览器的行为取决于收到的响应标头。如果浏览器收到如下响应标头
Cache-Control: private
Expires: Thu, 01 Jan 1970 00:00:00 UTC
然后,浏览器将始终使用 进行请求Cache-Control: max-age=0
。这通常发生在 Tomcat 容器中,BaseAuthenticator
当变量disableProxyCaching
为真时, 会添加这些响应标头。如果您遇到类似的问题,可以访问此关联寻求解决方案。
希望这能在一定程度上有所帮助:)
答案4
Cache-control: max-age=0
当您使用自签名证书时,Chrome 会添加标头。从 HTTPS 切换到 HTTP 将删除此标头。