跳到主要内容

1. 引言 (Introduction)

HTTP/2 [RFC7540] 允许客户端在满足特定条件时, 将不同 origins [RFC6454] 合并到同一连接上. 然而, 在某些情况下, 某个连接不能用于被合并的 origin, 因此定义了 421 (Misdirected Request) status code ([RFC7540], Section 9.1.2).

以这种方式使用 status code 允许客户端从 misdirected requests 中恢复, 但代价是增加延迟. 为解决这一问题, 本规范定义了一种新的 HTTP/2 frame type, "ORIGIN", 允许服务器指示某个连接可用于哪些 origins.

此外, 经验表明, HTTP/2 要求同时使用 DNS 和服务器证书来建立 server authority, 这一要求较为繁重. 本规范在使用 ORIGIN frame 时放宽了检查 DNS 的要求. 这样做还有额外好处, 例如消除与某些 DNS lookups 相关的延迟.

1.1. 记号约定 (Notational Conventions)​

本文档中的关键词 "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY" 和 "OPTIONAL", 当且仅当它们以此处所示的全大写形式出现时, 应按 BCP 14 [RFC2119] [RFC8174] 中的描述解释.