logo头像

科技始终来源于人性!

php curl 请求 https 接口时,返回错误码:77

错误情况

php CURL 请求一个 https 的接口时,返回一个bool false,打印错误curl_error($ch)信息时没有返回错误内容

查看错误码curl_errno($ch) 是 77 。

根据 curl 错误码显示,77 代表 'CURLE_SSL_CACERT_BADFILE' ,本地 CA 证书有异常。

解决方式

1、服务器更新 CA 证书
<% code %>

yum update ca-certificates

<% endcode %>

2、重启 php-fpm 或重启 APACHE

3、curl 请求中加上忽略证书
<% code lang:php %>

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

<% endcode %>