首页 >后端开发 >php教程 >如何修复 cURL 错误 60:SSL 证书问题?

如何修复 cURL 错误 60:SSL 证书问题?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-11-28 05:21:161085浏览

How to Fix cURL Error 60: SSL Certificate Problems?

Curl 错误 60:SSL 证书问题

尝试使用 cURL 向需要 SSL 的 URL 发送请求时,出现一条错误消息,指示“自签名”可能会遇到证书链中的证书。

出现此错误是因为 cURL 无法验证远程服务器提供的 SSL 证书。如果证书是自签名的,即不是由受信任的证书颁发机构 (CA) 颁发的,则可能会发生这种情况。

要解决此问题,您可以手动禁用 cURL 的 SSL 证书验证。但是,不建议这样做,因为它可能会危及应用程序的安全性。

相反,您应该确保 cURL 使用的 PHP 安装具有有效的 CA 根证书包。 cURL 使用此捆绑包来验证服务器 SSL 证书的真实性。

您可以从此处下载最新的 CA 根证书捆绑包:http://curl.haxx.se/docs/ caextract.html

下载后,通过将 php.ini 中的curl.cainfo 选项设置为证书的绝对路径来配置 PHP 使用该包

curl.cainfo = <absolute_path_to>/cacert.pem

或者,您可以使用 CURLOPT_CAINFO 选项在运行时配置 CA 证书:

curl_setopt($ch, CURLOPT_CAINFO, dirname(__FILE__)."/cacert.pem");

通过提供有效的 CA 根证书包,cURL 将能够验证服务器的 SSL 证书并建立安全连接。

以上是如何修复 cURL 错误 60:SSL 证书问题?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn