{
    分享网正式开通,我们为大家提供免费资源,欢迎大家踊跃投稿!

完美解决OpenSSL证书问题导致不能发信的方法

最近在部署phpmailer发信的时候,遇到这么一个错误:


OpenSSL Error messages: error:14090086:SSL
routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
 

这个错误从字面意思上理解应该是OpenSSL的证书问题。于是在网络上搜寻一段时间后。找到了完美的解决方案,完美杜绝了任何报错。

解决方案

先查找找验证钥匙的地址

使用 php函数openssl_get_cert_locations(),也可以到php.ini文件中寻找到。

在ssh中输入如下命令 php -r "print_r(openssl_get_cert_locations());"


Array
(
        [default_cert_file] =>/usr/local/openssl/cert.pem
        [default_cert_file_env] => SSL_CERT_FILE
        [default_cert_dir] =>/usr/local/openssl/certs
        [default_cert_dir_env] => SSL_CERT_DIR
        [default_private_dir] =>/usr/local/openssl/private
        [default_default_cert_area] =>/usr/local/openssl
        [ini_cafile] =>
        [ini_capath] =>
)
 

查找后的[default_cert_file] =>/usr/local/openssl/cert.pem,则为默认证书地址,我们替换成最新的证书即可解决问题。

下载并替换证书文件:


wget http://curl.haxx.se/ca/cacert.pem -O/usr/local/openssl/cert.pem
 

最后重启php即可解决问题:


service php-fpm restart
 
资源均来自第三方,谨慎下载,前往第三方网站下载


米微资源分享网 , 版权所有丨本站资源仅限于学习研究,严禁从事商业或者非法活动!丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:完美解决OpenSSL证书问题导致不能发信的方法
喜欢 ()分享 (0)