【问题标题】:Why does firefox not appear to be caching images? [closed]为什么 Firefox 似乎没有缓存图像? [关闭]
【发布时间】:2012-05-09 14:46:59
【问题描述】:

编辑:下面提供的答案。

我花了几天的时间来理解为什么 Mozilla Firefox 总是无法从其缓存中检索图像,而不是每次我重新加载页面时都获取新副本。

Google Chrome 似乎没有这个问题,但这是因为在 Chrome 中刷新页面不会强制它重新加载图像(除非使用 CTRL-F5)。

下面我已经回答了我自己的问题,并添加了一些额外的信息,我希望可以帮助其他人节省一些时间来解决这个问题。

【问题讨论】:

  • 如果不是问题,它可能很快就会被删除。您应该表达一个问题并将当前文本添加为​​答案(并接受答案)。无论如何,它看起来像是一个有用的考虑事项列表,所以不要冒险删除它。
  • 以上肯定适用,但答案对我来说真的很有用。好样的,还没删。谢谢。

标签: image firefox caching header


【解决方案1】:

谢谢kapep,好建议。不确定如何将问题表述为问题 - 但我可以回答我自己的问题!

首先要确保图像是可缓存的,您必须检查响应标头以确保将以下标头设置为有效值:

  • 'Cache-Control' 设置为私有或公共。
  • 'Expires' 是一个以正确格式表示的未来日期。 (例如,格林威治标准时间 2012 年 6 月 21 日星期四 06:20:49)
  • “Last-Modified”不比“Date”标头更新。
  • 'Content-Disposition' 未设置为“附件;”

如果您确信标头设置正确,但图像似乎仍然没有从缓存中到达,请确保以下几点:

  • 您不是 F5 刷新页面以检查缓存,因为如果您刷新,Firefox 将获取图像的新副本。确保您通过导航到另一个页面并重新访问同一页面来重新加载您的页面(这将是您的一个用户的正常行为)。
  • 在您的 about:config 中(只需在地址栏中输入此内容即可访问隐藏设置) browser.cache.memory.enable = true 和 browser.cache.disk.enable = true

【讨论】:

  • 我的 browser.cache.*.enable 设置被设置为 false。这就解释了!
  • 看起来按 F5 不仅会请求页面上使用的新资源,还会清除 Firefox 中整个域的缓存。您的回答帮助我更好地了解浏览器的行为。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-23
  • 2011-11-02
  • 1970-01-01
  • 2018-11-08
相关资源
最近更新 更多