【问题标题】:Why does new photo upload or duplication via FTP prevent browser caching?为什么通过 FTP 上传或复制新照片会阻止浏览器缓存?
【发布时间】:2013-01-24 19:21:36
【问题描述】:

我在使用 Apache CentOS 和 Wordpress 时遇到了最奇怪的行为。我有一个正在开发的简单网站。浏览器按预期缓存标题图像,直到我上传新版本或创建副本(通过 Yummy FTP)。原始图像每次都会缓存,但一旦被替换,即使版本和文件名完全相同,浏览器缓存也不再起作用,并且在每次页面更改时重新加载。浏览器是 Safari。

关于可能导致此问题的任何想法?

【问题讨论】:

    标签: php wordpress apache safari centos


    【解决方案1】:

    您的描述不够准确,无法回答这个问题。 有不同的缓存机制。 要回答这个问题,您必须调试浏览器执行的所有 HTTP 查询并检查请求和响应标头以进行缓存控制:

    http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html

    在 Firefox 上可以通过 firebug 完成,Chrome 内置了开发者工具。对 Safari 进行了快速研究,似乎用它来调试 HTTP 并不容易。但是每个浏览器的流程都应该非常相似。

    很可能即使图像缓存浏览器仍在发送请求以检查它们是否已更改并获取

    HTTP 304:未修改

    来自服务器的响应。

    【讨论】:

    • 好的,事实证明,通过 Wordpress 进行的任何上传都会导致文件被写入当前修改日期。巧合的是,通过 FTP 客户端进行的复制也会导致使用当前日期(这是有道理的)。该问题在几个小时后自行消失,因为服务器必须已停止将图像文件报告为最近修改过。我不知道 Apache CentOS 的时间阈值是多少,但我估计大约 6-12 小时。
    猜你喜欢
    • 2011-05-20
    • 2021-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 1970-01-01
    • 1970-01-01
    • 2018-08-17
    相关资源
    最近更新 更多