HTTP/1.0和HTTP/1.1之间的主要区别在于HTTP/1.1有一个强制性的主机在它的头(来源:HTTP袖珍参考 - 奥雷利)。为什么Wget在HTTP请求中有主机头?
那么,为什么那个使用HTTP/1.0协议的Wget有一个主机头呢?
我的Wget的输出与netcat:
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也可以用来代替它?
但Paul,服务器将尽一切努力来符合客户端使用的最兼容版本的HTTP。所以即使wget使用1.1服务器也会使用最兼容的一个。要么是1.1或1.0,为什么它不响应请求? – 2010-10-27 11:08:16
如果服务器不理解1.1,它将不会响应1.1请求。我知道现在不做1.1的服务器的数量可能很少,但是由于wget不需要任何1.1可以提供1.0的东西,为什么它会选择删除任何1.0服务器? – 2010-10-27 13:10:21