什么是X-Forwarded-Proto HTTP标头的完整规范?

时间:2012-10-28 17:11:37

标签: http http-headers

X-Forwarded-Proto HTTP标头值的完整规范是什么?

3 个答案:

答案 0 :(得分:33)

没有“完整规格” - 它是事实上的标准。标题名称前面的X-通常是 * ,表示它是实验/非标准/供应商特定的。一旦它成为HTTP的标准部分,它就会丢失前缀。

IETF有一些关于标准化的工作,但就我所知,它只是在选秀阶段。在撰写本文时,请查看http://tools.ietf.org/html/draft-ietf-appsawg-http-forwarded-10以获取最新草稿。但请注意,它可以在它被充实的时候随时改变,并且在生产中不依赖它。

<强>更新

RFC 7239现在定义了Forwarded:标头,用于替换X-Forwarded-*。如果您关心标准,我建议您使用它。


*这曾经是官方的事情,但不再是。 RFC 6648弃用了X-前缀约定。不幸的是,这个惯例是如此广为人知(并且贬低如此低调),IETF以外的大多数人可能会忽略该建议。

答案 1 :(得分:14)

2014年6月终于有RFC 7239 - Forwarded HTTP Extension。标题在5.4节中定义。

一些例子:

Forwarded: proto=https
Forwarded: for=1.2.3.4;proto=http

我希望这不会花太多时间来广泛采用。由于标准缺乏(来自here):

,标题多样性的一个例子
  • X-Forwarded-Proto: https(事实上的标准)
  • X-Forwarded-Protocol: https
  • X-Forwarded-Ssl: on
  • X-Url-Scheme: https
  • Front-End-Https: on

答案 2 :(得分:2)

我不知道&#34;完整规范&#34;。

IETF APPSArea工作组最近决定定义一个 new 标题字段&#34; Forwarded&#34;这应该取代&#34; X-Forwarded - *&#34;您提到的标题字段。

有关详细信息,请参阅http://tools.ietf.org/html/draft-ietf-appsawg-http-forwarded