cURL SSL证书错误“错误证书”

时间:2013-06-19 13:42:15

标签: php curl ssl certificate ssl-certificate

我正在尝试向服务器发送带有soap消息的SSL证书,并且只是设法让cURL接受证书(.pem文件通过OpenSSL放入.pfx文件吐出)并且不返回“无法设置私钥文件“(显然私钥必须保持其'包属性'),但它现在返回令人兴奋的新错误:

  

SSL证书问题,验证CA证书是否正常。详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CERTIFICATE:证书验证失败

我尝试使用以下方式设置CA证书:

curl_setopt($soap_do, CURLOPT_CAINFO, $caFile);

但是这对我的根目录和中间ca文件没有结果。

使用以下方法禁用此检查:

curl_setopt($soap_do, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($soap_do, CURLOPT_SSL_VERIFYPEER, 0);

让我想到了新问题:

  

错误:14094412:SSL例程:SSL3_READ_BYTES:sslv3警告错误证书

这已经在我身边荆棘数周了,虽然新的错误信息意味着变化我不确定这意味着进步。对于缺少什么/我做错了什么建议或建议都会受到很大的关注。

1 个答案:

答案 0 :(得分:1)

很可能CA捆绑是不正确的。验证路径&访问权限,也许尝试设置绝对路径。如果这没有帮助,请获取CA bundle并将其设置为curl_setopt($soap_do, CURLOPT_CAINFO,'cacert.pem');