CURL error 60: SSL certificate problem: certificate has expired

项目使用guzzleHttp做的一个接口,报错:certificate has expired

因为在linux centos环境与window环境有所不同,在此记录一下解决过程。

 

目录

报错提示

原因

解决方式

1.去掉guzzlehttp的验证

2.更新CA证书

总结


报错提示

cURL error 60: SSL certificate problem: certificate has expired (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://api.openai.com/v1/completions

原因

GuzzleHttp 使用http协议时,因为Let’s Encrypt 证书停止了HTTP API的请求支持,所以到期没有办法升级,证书过期验证不通过。

解决方式

 

1.去掉guzzlehttp的验证

new Client([
    'verify' =>false
]);

 

2.更新CA证书

从网站下载最新证书,并上传到原ca证书位置

下载证书

https://curl.haxx.se/ca/cacert.pem

 

查看证书位置

curl-config --ca

 

上传证书

使用sftp上传到/etc/pki/tls/certs/文件夹下

修改软连接

通过ll命令查看,可以发现证书有建立软连接

使用ln -sf强行创建软连接,若存在则覆盖原来的软连接

ln -sf cacert.pem /etc/pki/tls/certs/ca-bundle.crt

 

总结

建立软连接后,如果觉得不保险可以重启一下php-fpm,之后问题应该就解决了。相比于window中直接把文件下载后,直接修改php.ini,微微复杂了一点;linux中修改配置并不好使。

借鉴文章:https://www.cnblogs.com/xuduan/p/15380306.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JSON_L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值