如何解决 Laravel SMTP 中的 2 个可能的身份验证器错误

Posted

技术标签:

【中文标题】如何解决 Laravel SMTP 中的 2 个可能的身份验证器错误【英文标题】:How to resolve 2 possible authenticators error in Laravel SMTP 【发布时间】:2018-06-08 17:46:13 【问题描述】:

我正在尝试发送邮件。但我收到一条错误消息:-

无法使用用户名在 SMTP 服务器上进行身份验证 \"abcmail@gmail.com\" 使用 2 个可能的身份验证器

我什至在我的 gmail 帐户中启用了允许不太安全的应用程序。

另外,这是我的.env 文件中的代码:-

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=abcmail@gmail.com
MAIL_PASSWORD=12345
MAIL_ENCRYPTION=tls

可能的原因是什么?

【问题讨论】:

再次验证密码失败 密码正确。 【参考方案1】:

您需要在 config/mail.php 中添加以下设置

'stream' => [
    'ssl' => [
        'allow_self_signed' => true,
        'verify_peer' => false,
        'verify_peer_name' => false,
    ],
],

并在 .eve 中添加

MAIL_ENCRYPTION=ssl

使用 SSL 发送邮件投掷 SMTP

【讨论】:

非常感谢。我也试过这个,不幸的是,它没有用。相反,它说无法与主机 smtp.gmail.com [#0] 建立连接 好的,现在您需要在您的 google 帐户中降低安全性,这似乎可行

以上是关于如何解决 Laravel SMTP 中的 2 个可能的身份验证器错误的主要内容,如果未能解决你的问题,请参考以下文章

无法在 Laravel 6 中的 SMTP 服务器上进行身份验证

Linux搭建smtp服务器+laravel5.2发邮件配置

Laravel 邮件参数(sendmail/smtp)

发送邮件 Laravel XAMPP SMTP

Laravel 4:如何传递多个可选参数

Laravel:无法使用 2 个可能的身份验证器在 SMTP 服务器上使用用户名进行身份验证