代理隧道失败:无效请求 - 未发送HOST标头无法建立SSL连接

时间:2016-09-28 19:10:41

标签: ssl proxy wget

wget无法通过代理服务器下载,并显示以下消息:无效请求 - 未发送HOST标头以建立SSL连接。

示例:

[root@foosrv0234ccpra ~]# wget https://packages.chef.io/stable/el/6/chefdk-0.18.26-1.el6.x86_64.rpm
--2016-09-27 16:57:44--  https://packages.chef.io/stable/el/6/chefdk-0.18.26-1.el6.x86_64.rpm
Resolving deehprx024ccpxa.ehn.sr.dev.sdc.mycomp.com (deehprx024ccpxa.ehn.sr.dev.sdc.mycomp.com)... 129.35.62.40
Connecting to deehprx024ccpxa.ehn.sr.dev.sdc.mycomp.com (deehprx024ccpxa.ehn.sr.dev.sdc.mycomp.com)|129.35.62.40|:8080... connected.
Proxy tunneling failed: Invalid request -- HOST header was not sentUnable to establish SSL connection.

[root@foosrv0234ccpra ~]# env|grep proxy
http_proxy=http://barsrvprx024ccpxa.ehn.sr.dev.sdc.mycomp.com:8080
https_proxy=http://barsrvprx024ccpxa.ehn.sr.dev.sdc.mycomp.com:8080
no_proxy=barsrvacp014ccpra,barsrvchf014ccpra.ssm.sdc.gts.mycomp.com,localhost,127.0.0.1,barsrvacp014ccpra.ssm.sdc.gts.mycomp.com

我花了一段时间来解决这个问题,所以我在StackOverflow上分享了这个问题。请看下面的答案。

1 个答案:

答案 0 :(得分:0)

上述问题的发生是因为HTTP 1.1要求客户端提供HOST标头,而代理服务器不支持HTTP 1.1(有关此要求的详细信息,请参阅RFC 2616)。

一些替代方案:

  • 升级代理以支持HTTP 1.1
  • wget降级为仅支持HTTP 1.0(wget v1.12或更低版本)的版本
  • 找到另一种强制所有HTTP调用的方法是使用1.0而不是1.1(我没有探索这种可能性,我不知道该怎么做...降级wget解决了我的问题)