我的网站上有一个包含大量图片的网页。这些图像将在服务器上永远不会更改(如果它们发生更改,引用它们的页面上的URI将在http://cdn.example.com/image1.jpg?v=123等URI中具有不同的版本参数。)
根据an answer on StackOverflow中的建议,图片以Cache-Control: max-stale=31536000, public
标头投放。
ETag
标头已被停用,正如another answer中建议的那样。
当我在Chrome中按 F5 时,一切都按预期工作:页面重新加载,并且没有图像请求。但是,当我按 Ctrl + F5 时,浏览器会向服务器发出请求。
我希望它的行为与favicon一样:只有在明确询问时才对服务器发出请求(特定于 Ctrl + F5 图像),并且当我在包含图像的页面上执行 Ctrl + F5 时,避免往服务器的往返。
有可能吗?
如果是,我应该在回复中添加哪些标题?
注意:
Cache-Control: no-cache
,无法用HTTP 304做出回应。