宝塔面板curl post抓取数据时,提示SSL certificate problem: certificate has expired的解决办法

最近客户反馈一个问题,说网站在通过curl抓取数据的时候,提示:”cURL Error”:”SSL certificate problem: certificate has expired”,开始以为是自己网站ssl证书问题,更新了ssl证书还是报同样的错误,后来参考网上内容,修改了对应php版本里的配置,问题解决了,特此记录下

1、下载根证书到自己服务器

命令行通过下面的命令下载到自己服务器,或者通过该链接下载cacert.pem到本地解压,再将原文件cacert.pem通过FTP上传到服务器,比如我传到了目录”/etc/pki/tls/certs/cacert.pem”

#下载根证书
wget --no-check-certificate https://curl.haxx.se/ca/cacert.pem

2、修改当前网站所使用的php版本对应的配置

修改这2个地方:curl.cainfo/openssl.cafile,路径修改为cacert.pem的上传路径

curl.cainfo = /etc/pki/tls/certs/cacert.pem
openssl.cafile=/etc/pki/tls/certs/cacert.pem

修改配置文件里的“curl.cainfo/openssl.cafile”

3、最后重启php

问题解决,没有提示”SSL certificate problem: certificate has expired”了

重启php7.3

来源:解决PHP环境(宝塔面板)提示SSL certificate problem: certificate has expired

相关推荐