【问题标题】:Timezone for Expires and Last-Modified HTTP Headers过期和上次修改 HTTP 标头的时区
【发布时间】:2009-10-28 17:51:58
【问题描述】:

这是关于 Expires 和 Last-Modified HTTP 标头中指定的时区的问题。

在我看到的大多数示例中,我总是将 GMT 视为 HTTP 标头中的指定时区。

例如

最后修改时间:2009 年 10 月 21 日 00:00:00 GMT

到期:2009 年 10 月 28 日 00:00:00 GMT

您知道浏览器是否只支持 GMT,还是我们可以在这些 HTTP 标头中指定任何其他时区?

例如

最后修改时间:2009 年 10 月 21 日 00:00:00 PDT

到期:2009 年 10 月 28 日 00:00:00 PDT

提前致谢,

维韦克

【问题讨论】:

    标签: timezone http-headers


    【解决方案1】:

    在我们这个全球性的世界中,在 GMT 中发送这些 Expires 和其他与时间相关的元素有意义这确实是标准所要求的

    关于格式,HTTP (RFC2616) 指定 Expires 标头元素的格式以符合 RFC1123 本身指向 RFC802

    关于时区,但是第 3.3.1 节明确指出:

    所有 HTTP 日期/时间戳必须以格林威治标准时间 (GMT) 表示, 没有例外。就 HTTP 而言,GMT 完全等于 UTC (协调世界时)。这在前两种格式中由 包含“GMT”作为时区的三个字母缩写,以及 读取 asctime 格式时必须假定。 HTTP-date 区分大小写 并且绝不能包括超出特定作为 SP 的附加 LWS 语法。

    【讨论】:

      【解决方案2】:

      使用 PDT 可能没问题,但其他时区缩写不一定明确,也不一定能识别。 EST 肯定是模棱两可的(正如澳大利亚东部的那些人所保证的那样)。 UTC(通用时间,协调时间 - 又名 GMT,格林威治标准时间)的优点是没有变化,并且系统时钟(在 Unix 和衍生产品上)提供的时间是自“纪元”以来的秒数,即1970-01-01 00:00:00 +00:00(UTC 时间,虽然 UTC 直到 1972 年才正式成立)。因此,很容易获得UTC值;它是明确的;与 UTC 的偏移量不会改变。

      【讨论】:

        猜你喜欢
        • 2011-01-04
        • 2016-07-30
        • 1970-01-01
        • 2012-04-27
        • 2011-03-22
        • 1970-01-01
        • 1970-01-01
        • 2013-01-18
        • 1970-01-01
        相关资源
        最近更新 更多