PHP CURL错误 - 卷曲:(56)Recv失败:由对等方重置连接

时间:2012-07-16 08:48:15

标签: php curl

基本上,此错误仅发生在CURL

curl: (56) Recv failure: Connection reset by peer

但是当我直接在浏览器上直接访问链接时,它就可以了!

您对修复此错误或造成此错误的原因有何建议?

注意:服务器在ASP中编码,只在一次API调用中发生

3 个答案:

答案 0 :(得分:4)

我记得很久以前面对同样的问题。虽然我不记得究竟是什么解决了这个问题,但我记得尝试过以下几点:

  1. 我试图直接在URL中传递查询参数,我尝试通过POST方法

  2. 我尝试使用curl代理查看我是否可能被其他服务器阻止

  3. 我相信我也要求我的主人调查一下,他们做了一些Apache设置更改

答案 1 :(得分:4)

我通过从网址中删除空白字符来解决此问题。在我的情况下,代理服务器是错误的,而不是Web服务器。

在PHP中:

     curl_setopt($ch, CURLOPT_URL, trim($url));

答案 2 :(得分:0)

我对此代码有类似的问题:

        $url = "http://xxx.xxx.xxx.xxx";
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_PORT, 44455); //Set the port to connect to
        //curl_setopt($ch, CURLOPT_RETURNTRANSFER, 44455); 
        curl_setopt($ch, CURLOPT_URL, $url);
        echo $xml = curl_exec($ch);
        if(curl_errno($ch))
        {
            echo 'error:' . curl_error($ch);
        }
        curl_close($ch);

通过禁用此功能解决了问题:

        //curl_setopt($ch, CURLOPT_RETURNTRANSFER, 44455);