当前位置: 首页 > 面试题库 >

PHPMailer-SSL3_GET_SERVER_CERTIFICATE:证书验证失败

伍心水
2023-03-14
问题内容

遇到了应从具有自签名证书的邮件服务器发送电子邮件的问题,我得到的错误是:

PHP Warning:  stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in class.smtp.php on line 327.

有没有人遇到过类似的事情?

编辑:

我也尝试过设置stream_context参数(params:SSL上下文选项):

$options['ssl']['verify_peer'] = false;
$options['ssl']['verify_peer_name'] = false;
$options['ssl']['allow_self_signed'] = true;

运气不好,它仍然会失败,并出现与上述相同的错误。

谢谢。


问题答案:

PHP
5.6引入了SSL证书验证,因此,如果您的配置被破坏,它将因该错误而失败。您应该修复SSL,但是可以通过将SMTPOptions属性设置为不验证证书来恢复到旧的行为:

$mail->SMTPOptions = array(
    'ssl' => array(
        'verify_peer' => false,
        'verify_peer_name' => false,
        'allow_self_signed' => true
    )
);

编辑库会破坏整个库的作用-如果按照Kaf的回答建议进行操作,则升级时代码会中断。真的,不要那样做。

编者注 :禁用SSL验证会带来 安全隐患。 如果没有验证SSL /
HTTPS连接的真实性,恶意攻击者可能会冒充受信任的终结点(例如GitHub或其他远程Git主机),并且您将容易受到中间人攻击。 使用此解决方案之前,请确保您完全了解安全问题。



 类似资料:
  • 问题内容: 我正在使用XAMPP进行开发。最近,我将xampp的安装从旧版本升级到1.7.3。 现在,当我卷曲启用HTTPS的网站时,出现以下异常 致命错误:消息为“ cURL资源”的未捕获异常“ Re​​questCore_Exception”;资源ID为55;cURL错误:SSL证书问题,请验证CA证书是否正确。详细信息:错误:14090086:SSL例程:SSL3_GET_SERVER_CE

  • 问题内容: 我遇到了一个非常奇怪的错误,该错误与google.com的SSL和python有关(或更普遍地说,我认为具有多个证书链的域)。每当我尝试向其发送请求时,都会出现以下错误: 我经历了很多次尝试来使此工作正常进行,并且由于我不知道该怎么办而不得不将其发布到Stack Overflow。这是我尝试过的: 注意,该日期返回的时间比实时时间晚2分钟(可能会使我的证书无效)。我修复了这个问题,假设

  • - 我运行了此脚本,但出现了此错误。我怎么做?

  • 问题内容: 尝试运行Discord机器人时,遇到此错误: 它刚刚开始无处不在,并且每次都在发生。 我在Windows 10上使用python 3.8 这是什么意思,我该如何解决? 问题答案: 要解决此问题: 使用Internet Explorer转到discord.com(以管理员身份运行) 点击右上角的锁 点击查看证书 安装一个 PS:如果您的防病毒软件对Web浏览器有效,并且此解决方案不起作用

  • 您好,我在构建python映像时遇到问题 错误说, 但是当升级pip时,同样的错误显示。 错误:由于环境原因无法安装程序包错误:HTTPSConnectionPool(host='files.pythonhosted.org',port=443):url超过最大重试次数:/packages/ac/cf/0cc542fc93de2f3b9b53cb979c7d118cffb93204afb4629a

  • 误差 PHP警告:stream_socket_client():SSL操作失败,代码为1。OpenSSL错误消息:错误:14090086:SSL例程:SSL3_GET_Server_Certifice:证书验证失败