首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel 6发送邮件

Laravel 6发送邮件
EN

Stack Overflow用户
提问于 2020-02-14 11:25:02
回答 3查看 483关注 0票数 0

在使用Laravel驱动程序发送邮件时,我遇到了身份验证问题。

.env文件:

代码语言:javascript
运行
复制
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=account@gmail.com
MAIL_FROM_ADDRESS=account@gmail.com
MAIL_PASSWORD=app_password
MAIL_ENCRYPTION=tls

它给出了以下错误:

“需要530-5.7.0身份验证。”

  • 2-启用因子auth,并使用app密码;
  • 在465上也尝试了SSL,同样的错误;
  • 每次更改.env时,都会刷新配置;
  • 配置/邮件中的所有内容都对应于.env;

所以所有典型的解决方案都不起作用。还有什么会导致这个问题呢?

我还尝试在vivaldi帐户中使用smtp.vivaldi.net,它进行身份验证,但给出了一个错误:

“无有效收件人”

虽然收件人的电子邮件肯定是有效的,这对我来说也很奇怪。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-03-14 23:09:48

问题是我把config/mail.php搞砸了。

我写

'username' => env('email'), 'password' => env('app_password'),

而不是

'username' => env('MAIL_USERNAME','email'), 'password' => env('MAIL_PASSWORD','app_password'),

票数 0
EN

Stack Overflow用户

发布于 2020-02-14 11:35:48

我已经多次偶然发现这个错误,因此我不记得我收到的确切错误信息,但这是我的假设。

谷歌有一个名为“安全程度较低的应用程序”的选项,您需要启用该选项才能通过SMTP界面直接发送邮件。您能否检查是否禁用此标志并尝试启用它?

https://support.google.com/a/answer/6260879

除此之外,谷歌正在慢慢地反对这项功能。从2020年中期开始,您将无法再启用此标志,他们将在2021年完全删除此标志。

参考资料:https://gsuiteupdates.googleblog.com/2019/12/less-secure-apps-oauth-google-username-password-incorrect.html

票数 2
EN

Stack Overflow用户

发布于 2020-02-14 11:46:24

首先,您需要在这里设置2步验证谷歌安全。一个应用程序密码链接将出现,您可以获得您的应用程序密码插入到下面的"MAIL_PASSWORD“。获取应用程序密码这里的更多信息

代码语言:javascript
运行
复制
MAIL_DRIVER=smtp
MAIL_FROM_ADDRESS=noreply@talhaf.com
MAIL_FROM_NAME=System
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=YOUR_GMAIL@gmail.com
MAIL_PASSWORD=YOUR_GMAIL_CREATED_APP_PASSWORD
MAIL_ENCRYPTION=tls

不要忘记使用以下内容清除缓存:

代码语言:javascript
运行
复制
php artisan config:cache
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60225384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档