预期的响应代码250,但得到代码"530",消息"530 5.7.1认证需要

22 php laravel laravel-5

我在尝试配置SMTP邮件时遇到此错误 laravel

这是错误

这是我的配置 .env

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=fff3c01db52ee0
MAIL_PASSWORD=feaeda91dc9ab6
MAIL_ENCRYPTION=TLS
Run Code Online (Sandbox Code Playgroud)

这是我在config上的mail.php 我已经尝试在env上验证SMTP,但是我一直得到相同的错误,所以现在堆栈就出现了这个错误

wap*_*oaj 49

您的mail.php在配置上声明主机为smtp.mailgun.org,端口为587,而在env上则不同.你需要将你的mail.php改为

'host'=> env('MAIL_HOST','mailtrap.io'),

'port'=> env('MAIL_PORT',2525),

如果你想使用mailtrap.Then运行

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

  • php artisan命令的最后一行帮助了我 (6认同)
  • 无需更改“mail.php”文件,“php artisan config:cache”就可以了 (6认同)
  • `env()` 帮助器完成了这项工作,并且不需要更改 `mail.php` 中的值。只需确保“.env”文件中的所有电子邮件设置正确即可。 (4认同)

Gja*_*jaa 9

我看到你有所有的设置。您只需要结束本地 Web 服务器并重新启动它

php artisan serve
Run Code Online (Sandbox Code Playgroud)

每次更改.env文件时,都需要重新启动服务器以使新选项生效。

或清除并缓存您的配置

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)


DAV*_*AYI 7

我相信这已经在某些部分得到了解答,只需使用gmail测试您的“ MAIL_HOST”,别忘了清除缓存。设置如下:首先,您需要在此处设置两步验证google security。将会出现一个“应用程序密码”链接,您可以获取您的应用程序密码以插入“ MAIL_PASSWORD”下方。有关在此处获取应用密码的更多信息

MAIL_DRIVER=smtp
MAIL_FROM_ADDRESS=noreply@domain.com
MAIL_FROM_NAME=DomainName
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=YOUR_GMAIL@gmail.com
MAIL_PASSWORD=YOUR_GMAIL_CREATED_APP_PASSWORD
MAIL_ENCRYPTION=tls
Run Code Online (Sandbox Code Playgroud)

使用以下命令清除缓存:

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

  • 当您将 mail_driver 设置为 sendmail 而不是“smtp”时,为什么需要这个?为什么 Laravel 不能像 Wordpress 和服务器上运行的所有其他系统一样从服务器上的 sendmail 发送...... (2认同)