【问题标题】:Header last modified and page freshness. What should be sent in the header?标题上次修改和页面新鲜度。应该在标头中发送什么?
【发布时间】:2015-01-10 01:04:20
【问题描述】:

快速提问,我只是在 Nibbler 上检查我的网站,发现我的网站没有在网站新鲜度下报告任何内容,所以采纳了他们的建议并继续检查我发现我实际上并没有发送的回复标题响应的 Last Modified 标头。

我做了最后一次修改标题的广告,但现在对一件简单的事情有点困惑,应该发送什么日期页面内容修改的日期或编码修改的日期?

这是我的标题

header("Last-Modified: " . gmdate("D, d M Y H:i:s", strtotime($page_info['sitemap_last_modified'])) . " GMT");

它由我的 index.php 处理并在其他任何事情之前发送。

变量是页面内容修改的日期。

提前致谢

【问题讨论】:

    标签: php http-headers


    【解决方案1】:

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

    第 14.29 节“最后修改”:

    这个头域的确切含义取决于源服务器的实现和原始资源的性质。对于文件,它可能只是文件系统的最后修改时间。对于具有动态包含部分的实体,它可能是其组成部分的最后修改时间集合中的最新时间。

    看起来可能要复杂得多。

    我建议您使用您的网络服务器和/或 PHP 的标准。编写一个嵌入了几个图像的虚拟回显文件,并查看页面本身的标题,然后稍微更改 PHP 代码并进行比较。

    【讨论】:

    • 我已经这样做了,但最令人困惑的是,Firebug 报告了一个,而whatsmyip.org/http-headers 报告了另一个,所以我不明白为什么
    • 我唯一的猜测是 Firebug 和 WhatsMyIP 有不同的方法来分析最后修改的标头。可能是使用 Firebug,它采用实际页面本身的最后修改,而 WhatsMyIP 采用最近修改的资源的最后修改标头。这可以解释为什么 stackoverflow.com 根据 Chrome 没有 last-modified 标头,但根据 WhatsMyIP 却有。
    猜你喜欢
    • 2019-04-29
    • 2011-11-14
    • 1970-01-01
    • 2018-06-08
    • 2012-03-13
    • 2011-11-14
    • 2012-10-10
    • 1970-01-01
    相关资源
    最近更新 更多