CURL过帐到另一个域SSL证书错误

时间:2013-04-05 01:38:00

标签: php curl

我正在尝试将curl用于API的HTTPS地址。 api只是在页面上显示一个字符串结果,并且不会返回我的域名。我不确定是否有另一种方法可以做到这一点,但认为CURL是唯一的解决方案。

这可能只发生在我的本地主机上吗?

收到错误: SSL证书问题,验证CA证书是否正常

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);


//execute post
$result = curl_exec($ch);
var_dump(curl_error($ch));

结果: 字符串'SSL证书问题,验证CA证书是否正常。细节: 错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败'(长度= 146)

1 个答案:

答案 0 :(得分:0)

默认情况下,PHP会尝试验证对等方的证书。

如果您确定不在乎,可以执行此操作以查看cURL请求是否可以触发,仅用于测试:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

在执行cURL调用之前。

正确的方法是使用CURLOPT_CAPATHCURLOPT_CAINFO实际设置cURL调用以使用服务器的现有CA证书。