为什么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也可以用来代替它?     
已邀请:
早在实现这是允许一台服务器为多个域提供页面的唯一方法时,Host头被添加为HTTP / 1.0的“可选”添加。 wget使用HTTP / 1.0和Host作为与最大站点数量兼容的方式,其中一些站点即使需要Host也不响应HTTP / 1.1。     
在HTTP / 1.0中,
Host
标题是可选的。区别在于HTTP / 1.1将其从可选更改为强制。 特别是,如果
GET
行不包含主机名(如您的示例中所示),则需要将其包含在标题中(因为否则,如果服务器无法确定您的请求是哪个主机,则无法使用“虚拟”域对于)。     

要回复问题请先登录注册