在 laravel8 中发送电子邮件,使用 Gmail 应用程序专用密码时失败

在 laravel8 中发送电子邮件,使用 Gmail 应用程序专用密码时失败

我使用 Gmail 帐户的应用程序专用密码来发送电子邮件,因为其他方式在我的服务器环境中不起作用,尽管它在本地有效。我的配置如下

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
[email protected]
MAIL_PASSWORD=app=pwd-from-gmail
MAIL_ENCRYPTION=ssl
[email protected]
MAIL_FROM_NAME="testy"

但是现在我在本地环境中也遇到了以下错误。

Swift_TransportException: Failed to authenticate on SMTP server with username "[email protected]" using 3 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code "534", with message "534-5.7.9 Application-specific password required. Learn more at
534 5.7.9  https://support.google.com/mail/?p=InvalidSecondFactor k14sm3626375pfh.154 - gsmtp

我该如何解决这个问题?

答案1

我无法使用应用程序密码解决这个问题。但是我按照以下步骤以其他方式解决了它。

  1. 已禁用双重身份验证
  2. 启用安全性较低的应用程序
  3. 从服务器上的浏览器登录 gmail 帐户。
  4. 在 .env 文件中将应用密码更改为账户密码

现在它就是这样工作的。我甚至在从服务器浏览器退出 gmail 帐户后检查了这一点。它有效。似乎他们只需要验证设备。如果我将其移动到另一台服务器,那么我必须重新登录。这是我现在遇到的问题。

相关内容