cURL 错误 60:自签名证书的 SSL 证书问题
尝试使用 cURL 从 VK 的授权端点检索访问令牌时,用户可能会遇到错误 60,指示“证书链中的自签名证书”问题。尽管手动访问端点成功,但仍会发生这种情况。
了解错误
该错误是由于缺少有效的证书颁发机构 (CA) 根证书包而引起的你的 PHP 安装。该捆绑包包含 cURL 用于验证主机的 SSL 证书的加密签名。如果没有此验证,cURL 无法建立安全连接并返回 SSL 证书错误。
解决方案
要解决此问题,请确保您拥有最新的证书已安装 CA 根证书捆绑包。您可以从 http://curl.haxx.se/docs/caextract.html 下载一个。
下载后,更新您的 PHP 配置:
在 php.ini 中,添加:
curl.cainfo = <absolute_path_to> cacert.pem
或者,如果将其设置为运行时:
curl_setopt ($ch, CURLOPT_CAINFO, dirname(__FILE__)."/cacert.pem");
注意:
不建议禁用 CURLOPT_SSL_VERIFYPEER,因为它可能会损害安全性并使您的应用程序容易受到 SSL 证书攻击。
以上是如何修复 cURL 错误 60:自签名证书的 SSL 证书问题?的详细内容。更多信息请关注PHP中文网其他相关文章!