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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是X-Forwarded-Proto HTTP标头的完整规范?相关的知识,希望对你有一定的参考价值。

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

答案

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

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

更新:

RFC 7239现在定义了Forwarded:标题,旨在取代X-Forwarded-*。如果您关心标准,我建议您使用它。


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

另一答案

最后是2014年6月的RFC 7239 - Forwarded HTTP Extension。标题在5.4节中定义。

一些例子:

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

我只希望这不会花太多时间来广泛采用。由于标准缺乏(来自here)标题的多样性的一个例子:

  • Z zxswい(De c c c and s rd rd)
  • X-Forwarded-Proto: https
  • X-Forwarded-Protocol: https
  • X-Forwarded-Ssl: on
  • X-Url-Scheme: https
另一答案

我不知道“完整规格”。

IETF APPSArea工作组最近决定定义一个新的标题字段“Forwarded”,它应该替换你提到的“X-Forwarded- *”标题字段。

有关详细信息,请参阅Front-End-Https: on

以上是关于什么是X-Forwarded-Proto HTTP标头的完整规范?的主要内容,如果未能解决你的问题,请参考以下文章

X-Forwarded-Proto 为 http 时取消设置 HTTPS 环境变量

X-Forwarded-Proto 和 Flask

.htaccess 中的 apache HTTP:X-Forwarded-Proto 导致开发环境中的重定向循环

IIS 等效于“proxy_set_header X-Forwarded-Proto https;”

Google Cloud Run for Anthos(Knative)未在 https 请求上正确设置 X-Forwarded-Proto 标头

apache 2.4,嵌套if指令