6

我正在尝试在我的 Laravel 应用程序中设置电子邮件,我的 env 文件是这样的:

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=noreply@xxx.com
MAIL_PASSWORD=xxx
MAIL_ENCRYPTION=tls

我尝试根据this question Expected response code 250中给出的答案,但得到代码“535”,消息“535-5.7.8用户名和密码不被接受

我按照这些步骤,启用了两步验证,然后创建了应用密码并配置了我的.env文件

最后我做到了php artisan config:cache

无法使用 3 个可能的身份验证器在用户名“noreply@xxx.com”的 SMTP 服务器上进行身份验证。Authenticator LOGIN 返回 Swift_TransportException:预期响应代码 235,但得到代码“534”,消息“534-5.7.14”

这个你能帮我吗。谢谢。

4

4 回答 4

4

需要创建新的less securegmail 帐户进行配置Email。你的电子邮件应该not use in more than 3 projects

于 2019-11-13T07:25:50.107 回答
4

使用 Laravel 配置 Gmail/Google SMTP 的步骤

  1. .env文件设置

     MAIL_DRIVER=smtp
     MAIL_HOST=smtp.googlemail.com
     MAIL_PORT=465
     MAIL_USERNAME=GMAIL_USERNAME
     MAIL_PASSWORD=GMAIL_PASSWORD
     MAIL_ENCRYPTION=ssl
    
  2. 允许不太安全的应用程序

转到 Google 帐户 > 安全 > 允许安全性较低的应用。

  1. 允许新设备,或者允许来自移动设备的谷歌评论通知的新签名,或者如果这不起作用。使用相同的 gmail id 登录并打开下面的链接,它将允许您允许最近的登录尝试。(只需要一次来验证我们的 Laravel 应用程序)

https://www.google.com/accounts/DisplayUnlockCaptcha

PS - 如果您启用了两步验证,则创建应用密码并使用该密码代替GMAIL_PASSWORD

参考 - https://support.google.com/mail/answer/7126229

于 2021-02-02T14:39:59.127 回答
4

我有同样的问题。解决问题的是验证码链接,即使我不使用它。似乎还有一个额外的步骤可以允许新设备打开 gmail 帐户。

https://support.google.com/mail/answer/7126229?visit_id=636865986363810933-1186759849&rd=1#cantsignin

我已经在下面设置了这个

允许安全性较低的应用:如果您不使用两步验证,您可能需要允许安全性较低的应用访问您的帐户。

于 2019-02-24T10:45:02.967 回答
2

如果以上所有答案都无法解决,请到您的账户设置https://myaccount.google.com/security开启两步验证并生成应用密码,这种方式肯定行得通。

于 2020-08-08T19:12:33.697 回答