为什么Wget在其HTTP请求中有主机头?
HTTP / 1.0和HTTP / 1.1之间的主要区别在于HTTP / 1.1中有一个强制主机头(源:HTTP Pocket Reference - O'reilly)。
那么,为什么使用HTTP / 1.0协议的Wget中有一个主机头?
我用netcat输出Wget:
GET / HTTP/1.0
User-Agent: Wget/1.12 (linux-gnu)
Accept: */*
Host: 127.0.0.1:10101
Connection: Keep-Alive
很明显,Wget使用HTTP / 1.0协议版本,它如何在其中包含主机头?或者我对HTTP协议的理解有问题吗?
即使HTTP / 1.0在其HTTP请求中可以有主机标头,wget使用HTTP / 1.0协议的原因是什么,而HTTP / 1.1也可以用来代替它?
没有找到相关结果
已邀请:
2 个回复
僻朵庙惩竣
糖固傻染
标题是可选的。区别在于HTTP / 1.1将其从可选更改为强制。 特别是,如果
行不包含主机名(如您的示例中所示),则需要将其包含在标题中(因为否则,如果服务器无法确定您的请求是哪个主机,则无法使用“虚拟”域对于)。