日期:2014-05-17  浏览次数:20746 次

使用curl报couldn't connect to host错误
PHP code
//发送post请求
function _xpost($url,$p)
{
    $f='';
    $data='';
    foreach($p as $k=>$v)
    {
        $data.=$f.$k.'='.urlencode($v);
        //$data.=$f.$k.'='.$v;
        $f='&';
    }
    //echo $data.'</br>';

    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);  
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);  
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    $res = curl_exec($curl);

    if(curl_errno($curl))
    {
        echo 'Curl error: ' . curl_error($curl);
    }
    curl_close($curl);
    return $res;
}

我调用这个函数发一条短信,在本地服务器执行的时候能正常运行,可是部署到网络服务器上去就报了Curl error:couldn't connect to host错误,请问怎么回事啊?怎么解决

------解决方案--------------------
你在服务器上ping一下那个主机网址看看是不是通的?

有可能是服务器的DNS服务器设置问题,导致找不到这台主机,还有就是你的服务器ip被对方屏蔽了也会出现这样的提示
------解决方案--------------------
同意楼上
------解决方案--------------------
你用 foskopen能不能连接