php curl请求总是返回false

时间:2016-02-25 16:24:01

标签: php curl https ssl-certificate

我准备了一个带有用户凭据的URL来验证客户端并返回该文件 我在这段代码中使用curl在php 5.6.13中发布它:

$url ="https://192.168.0.15:10445/wfmi/Infrastructure/getFile.php?filenamecentraldb=".$_GET["filename"]."&username=administrator&password=passwordofadmin";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);

但反应总是错误的。

我运行ch_error($ch)并返回

  

"对等证书无法使用已知的CA证书进行身份验证"这是什么意思 ?

这是目标页面:

if(isset($_GET["filenamecentraldb"]))
{
    error_log("Check1");//never reach there...
    try
    {
        $username = $_GET["username"];
        $password = $_GET["password"];
        ...
        exit(0);
    }
    catch (PDOException $e)
    {
        echo "Error ocurred:".$e->getMessage();
        exit(0);
    }
    catch (Exception $e)
    {
        echo "Error ocurred:".$e->getMessage();
        exit(0);
    }
}

1 个答案:

答案 0 :(得分:2)

由于您使用的是私有IP和(很可能是虚拟ssl证书),因此您需要为请求禁用ssl验证。

 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

但请注意,这是一种安全风险。所以在生产环境中避免这种情况