预期响应代码 250 但得到代码“535”,消息“535-5.7.8 用户名和密码未被接受

Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted

我最近在尝试通过 gmail 发送邮件时遇到 SwiftMail 错误。

 Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted.

我试图通过我的 gmail 发送邮件,但 google 认为我是垃圾邮件(可能是因为我请求太快了)我收到他们的邮件说我的帐户可以访问,我告诉他们那是我。我能够毫无问题地发送邮件,现在就发生了。

这是我的 env 文件的内容。

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=talentscoutphil@gmail.com
MAIL_PASSWORD=mypasswordhere
MAIL_FROM=talentscoutphil@gmail.com
MAIL_NAME=talentscout

我在互联网上进行了研究,一些答案包括启用“较小应用程序的访问权限”和“解锁 gmail 验证码”,遗憾的是在我找到两步验证之前对我不起作用。

我做了以下事情:

  1. 启用两步验证到googleHERE

  2. 创建系统使用的应用程序密码HERE

  3. 我选择了其他(自定义名称)然后点击生成

  4. 转到我在 laravel 中的 env 文件并编辑了这个

    MAIL_USERNAME=talentscoutphil@gmail.com

    MAIL_PASSWORD=生成的密码

  5. 重新启动了我的 Apache 服务器,然后繁荣! 又能用了.

这是我的解决方案。我创建这个至少是为了让其他人不会浪费时间研究可能的答案。

这一步对我有用...没有两步验证。 因为我为我的本地开发创建了一个虚拟帐户,所以我对这个设置没问题。 请确保仅在您的帐户不包含任何个人或任何关键数据时才执行此操作。 这只是解决此错误的另一种方法,并不安全。

我打开了允许安全性较低的应用程序访问的设置。 在这里形成: https://myaccount.google.com/lesssecureapps

我遇到了同样的问题,更改我的 gmail 密码解决了这个问题,并且不要忘记启用 less secure app on on your gmail account

我一切都很好。还启用了不太安全的应用程序选项。尽管如此,我还是收到了错误。我所做的是:

  • Google 将向您发送 严重安全警报
  • 然后你必须授权activity。 (点击“是的,那是我”类型的东西)
  • 然后您可以尝试重新发送邮件。

这是我的 .env 邮件设置

MAIL_DRIVER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=587
MAIL_USERNAME=example@gmail.com
MAIL_PASSWORD=hello27
MAIL_ENCRYPTION=tls

我遇到了与问题中所述相同的错误,但是使用

php artisan config:cache

一切正常

我遇到了同样的问题,我在

下解决了这个问题

转到gmail.com

我的账户

并启用

允许安全性较低的应用:开启

开始工作

出于安全原因,Gmail 倾向于阻止使用在其他应用程序中用作用户名的邮寄地址。您应该为邮件目的创建一个新的电子邮件地址,或者您必须转到不太安全的应用程序访问并打开对不太安全的应用程序的访问。 Gmail 会向您发送一封确认邮件,您可以从中确认这些更改是由您自己进行的。只有这样,您才能通过应用程序使用此类邮寄地址进行邮寄​​。

config/mail.php不需要更新任何东西。只需使用此特定密钥将您的凭据放入 .env 即可。这是我的 .env 文件。

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=example@gmail.com
MAIL_PASSWORD=********
MAIL_ENCRYPTION=tls

经过长时间的调试和谷歌搜索,我遇到了同样的问题,我找到了解决方案。通过启用安全性较低的应用程序。电子邮件开始工作。

如果您的 Gmail 通过两步验证是安全的,您将无法启用安全性较低的应用程序。所以关闭两步验证并启用安全性较低的应用程序。通过单击此处 enable less secure apps on your gmail account

我有同样的问题,然后我做了这两个步骤:

  • 在您的 google 帐户安全策略中启用 "Allow less secure apps"。
  • 重新启动您的本地服务器。

我有这个问题。首先检查凭据和用户名,它们都很好,然后重新启动我的服务器 (docker stop/start),它现在可以工作了。我相信有缓存的东西

我遇到了同样的问题并在未启用 2FA 的情况下解决了它(仍然需要“允许安全性较低的应用程序”)。

检查 Google error code list 后,我认为 .env 中可能存在一些错误。

以下设置在 Laravel 8 中测试并有效:

MAIL_MAILER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=username@gmail.com
MAIL_PASSWORD='your#password_here'  # put the password in quotes
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=username@gmail.com
MAIL_FROM_NAME="${APP_NAME}"

请记住将密码放在引号中。这对我有用。

如果您使用您的 cpanel 自定义电子邮件,请将您的主机从 smtp.gmail.com 更改为您的域名。它对我有用