如何防止在Shift + F5上请求图像?

时间:2017-11-11 16:59:34

标签: http caching cache-control clientside-caching

我的网站上有一个包含大量图片的网页。这些图像将在服务器上永远不会更改(如果它们发生更改,引用它们的页面上的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 时,避免往服务器的往返。

有可能吗?

如果是,我应该在回复中添加哪些标题?

注意:

  • 在测试期间,开发者控制台仍然关闭
  • 内容直接从服务器提供;没有反向代理。
  • 在页面上按 Ctrl + F5 后请求图像时,请求包含Cache-Control: no-cache,无法用HTTP 304做出回应。

0 个答案:

没有答案