运行命令时:
curl --head http://www.yourdomain.com/
在我的本地机器上,我得到了这个输出:
HTTP/1.1 200 OK
Date: Sat, 31 Mar 2012 09:45:16 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Set-Cookie: ASP.NET_SessionId=p2mt4l553bti4x55geyiwiil; path=/; HttpOnly
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Length: 14663
但在我的直播服务器上,我得到:
curl: (56) Recv failure: Connection reset by peer
他们都使用相同的curl版本(7.21.0),现在,我只收到一个特定网址的错误。
我该如何解决这个问题?
答案 0 :(得分:0)
“Recv failure”表示libcurl中的recv()调用失败,然后表示某些类型的网络问题。很难非常具体地说明你应该做些什么来追踪这一点,但是通过网络来确切地了解在TCP级别上发生的事情将是一个良好的开端。
答案 1 :(得分:0)
从CURL ERROR: Recv failure: Connection reset by peer - PHP Curl
复制我认为D,E部分可能有所帮助:
d。最大传输单位
此错误的一个常见原因是通过网络连接传输的数据包的MTU(最大传输单元)大小已从默认的1500字节更改。如果您已配置VPN,则最有可能在配置期间更改
d。防火墙:iptables
如果您不了解这些人的方法,他们会引起一些严重的问题..尝试访问您要连接的服务器以查看以下内容
您可以访问该服务器上的端口80 实施例
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT` 以下是在任何其他接受之前的最后一行 实施例
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 检查所有DROP,REJECT并确保它们没有阻止您的连接
暂时允许所有连接,看看是否通过