这是由于后端使用了easywechat,而他封装的时候会检测ssl,
这是 SSL 证书问题所致,在使用 SDK 调用微信支付等相关的操作时可能会遇到报 “SSL certificate problem: unable to get local issuer certificate” 的错误。
微信公众平台提供的文档中建议对部分较敏感的操作接口使用 https 协议进行访问,例如微信支付和红包等接口中涉及到操作商户资金的一些操作。
wechat SDK 遵循了官方建议,所以在调用这些接口时,除了按照官方文档设置操作证书文件外,还需要保证服务器正确安装了 CA 证书。
-
下载 CA 证书
你可以从 http://curl.haxx.se/ca/cacert.pem 下载 或者 使用微信官方提供的证书中的 CA 证书
rootca.pem
也是同样的效果。 -
在
php.ini
中配置 CA 证书只需要将上面下载好的 CA 证书放置到您的服务器上某个位置,然后修改
php.ini
的curl.cainfo
为该路径(绝对路径!),重启php-fpm
服务即可。curl.cainfo = /path/to/downloaded/cacert.pem
{warning} 注意证书文件路径为绝对路径!以自己实际情况为准。
其它修改 HTTP 类源文件的方式是不允许的。
参考地址:
常见问题汇总 - EasyWeChat 帮助文档 v5.x - 文江博客
EsayWechat 下单接口 报错 (消息:cURL错误60:SSL证书问题:无法获得本地颁发者证书)_会养生的程序员的博客-CSDN博客