HTTP 报文,为什么 header 里不加 Host 就 400?

2016-11-06 17:14:50 +08:00
 karia
难道一定要过代理?
5022 次点击
所在节点    HTTP
11 条回复
karia
2016-11-06 17:48:54 +08:00
我的理解是....Host 字段只是让代理检查一下请求的这个页面在不在代理的本地缓存里的...
并不十分清楚,还望大腿指出
kfll
2016-11-06 17:50:32 +08:00
https://www.ietf.org/rfc/rfc2616.txt

All Internet-based HTTP/1.1 servers MUST respond with a 400 (Bad Request) status code to any HTTP/1.1 request message which lacks a Host header field.

楼下说点不好听的
meta
2016-11-06 17:54:45 +08:00
不加 host 那是 http 1.0 ,除非你服务器上就一个网站。
bdbai
2016-11-06 19:19:20 +08:00
同上,如果一台机子跑多个网站,服务器就靠 Host 来决定请求给谁处理。
karia
2016-11-06 22:46:38 +08:00
@meta
@bdbai
那如果 Host 里什么都不写或者写 IP 地址都没有实际意义是吗?(比如浏览器直接用 IP 地址访问没有域名的服务器)

我看到有些 302 的页面是通过 Host 字段来计算跳转 Location 的....也算用途之一?
bdbai
2016-11-06 23:07:16 +08:00
@karia 纯 IP 地址也有可能是一个站,和不写还是有区别的。
clino
2016-11-06 23:09:09 +08:00
服务器那边配置成这样的吧
cevincheung
2016-11-07 02:29:20 +08:00
大街上喊一声“喂!(#`O ′)” 鬼知道你喊谁啊。。。。
TimePPT
2016-11-07 08:21:07 +08:00
叫你不看文档😂
popok
2016-11-07 08:26:38 +08:00
@cevincheung 好形象啊
tabris17
2016-11-07 09:42:59 +08:00
协!议!规!定!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/318496

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX