这是我的代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postValues);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);
现在 $result 为“false”,curl_error() 向我显示 SSL 错误“无法识别对等证书颁发者”。 但是虽然有这个错误,但是post数据已经发送到$apiUrl了。
这是正确的吗?错误或功能? ;)
我如何改进这一点以防止将数据发送到不安全的服务?
提前致谢! :)
最佳答案
有两种解决方法...
解决方案 - 1
如果您想跳过检查 SSL 证书使用....
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
解决方案 - 2
如果您有证书,请使用...
curl_setopt ($ch, CURLOPT_CAINFO, "PATH_TO/cacert.pem");
谢谢。
关于PHP cURL 在发送数据后提供 SSL 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23241712/