我在尝试在laravel上配置SMTP邮件时遇到此错误
laravel
以下是我在.env上配置
.env
MAIL_DRIVER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=fff3c01db52ee0 MAIL_PASSWORD=feaeda91dc9ab6 MAIL_ENCRYPTION=TLS
我必须尝试验证env上的SMTP,但我一直得到相同的错误,所以现在我堆栈在该错误上
9udxz4iz1#
你的mail.php在配置上你声明主机为smtp.mailgun.org和端口为587而在环境上是不同的.你需要到改变你的mail.php到
mail.php
smtp.mailgun.org
587
'host' => env('MAIL_HOST', 'mailtrap.io'),
'port' => env('MAIL_PORT', 2525),
如果您希望使用mailtrap。然后运行
php artisan config:cache
cyej8jka2#
我相信这个问题已经在一些章节中得到了解答,只需使用gmail测试您的“MAIL_HOST”,不要忘记清除缓存。首先,你需要在这里设置2步验证google security .一个应用程序密码链接将出现,你可以得到你的应用程序密码插入到下面的“MAIL_PASSWORD”.更多信息获取App Password here
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
清除缓存:
rur96b6h3#
我看到您的所有设置都是正确的。您只需要结束本地Web服务器,然后使用
php artisan serve
每次更改.env文件时,都需要重新启动服务器,新选项才能生效。或使用清除并缓存配置
hts6caw34#
是的,如果你已经尝试了上面所有的解决方案(什么更有可能发生),没有为你工作,它可能会发生,没有安装狂饮。Laravel提供了邮件工具,这需要Guzzle框架,但它不会被安装,从文档开始,将不得不手动安装它:https://laravel.com/docs/master/mail#driver-prerequisites
composer require guzzlehttp/guzzle
luaexgnf5#
如果你想使用默认的mailtrip.io,你不需要修改mail.php文件。1.在www.example.com上创建帐户 mailtrip.io1.转到收件箱〉我的收件箱〉SMTP设置〉集成Laravel1.修改.env文件并替换正确凭据的所有null:
mailtrip.io
null
MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null
1.运行:
如果您使用的是Gmail,有一个说明:https://stackoverflow.com/a/64582540/7082164
mutmk8jj6#
php artisan config:clear
(NOT缓存)
mrphzbgm7#
如果您使用了“PHP artisan serve”命令,请在更改“.env”后重新启动Laravel开发服务器。
a5g8bdjr8#
所以在尝试了所有的方法,清除该高速缓存,改变SMTP细节之后,唯一对我有效的解决方案是重新安装swift mailer包(降级版本),它的工作就像一个魅力
composer require "swiftmailer/swiftmailer:^6.0"
yvt65v4c9#
在第123行安装\config\backup.php
'mail' => [ 'to' => '', ],
9条答案
按热度按时间9udxz4iz1#
你的
mail.php
在配置上你声明主机为smtp.mailgun.org
和端口为587
而在环境上是不同的.你需要到改变你的mail.php
到如果您希望使用mailtrap。然后运行
cyej8jka2#
我相信这个问题已经在一些章节中得到了解答,只需使用gmail测试您的“MAIL_HOST”,不要忘记清除缓存。首先,你需要在这里设置2步验证google security .一个应用程序密码链接将出现,你可以得到你的应用程序密码插入到下面的“MAIL_PASSWORD”.更多信息获取App Password here
清除缓存:
rur96b6h3#
我看到您的所有设置都是正确的。您只需要结束本地Web服务器,然后使用
每次更改
.env
文件时,都需要重新启动服务器,新选项才能生效。或使用清除并缓存配置
hts6caw34#
是的,如果你已经尝试了上面所有的解决方案(什么更有可能发生),没有为你工作,它可能会发生,没有安装狂饮。
Laravel提供了邮件工具,这需要Guzzle框架,但它不会被安装,从文档开始,将不得不手动安装它:https://laravel.com/docs/master/mail#driver-prerequisites
luaexgnf5#
如果你想使用默认的
mailtrip.io
,你不需要修改mail.php
文件。1.在www.example.com上创建帐户 mailtrip.io
1.转到收件箱〉我的收件箱〉SMTP设置〉集成Laravel
1.修改
.env
文件并替换正确凭据的所有null
:1.运行:
如果您使用的是Gmail,有一个说明:https://stackoverflow.com/a/64582540/7082164
mutmk8jj6#
(NOT缓存)
mrphzbgm7#
如果您使用了“PHP artisan serve”命令,请在更改“.env”后重新启动Laravel开发服务器。
a5g8bdjr8#
所以在尝试了所有的方法,清除该高速缓存,改变SMTP细节之后,唯一对我有效的解决方案是重新安装swift mailer包(降级版本),它的工作就像一个魅力
yvt65v4c9#
在第123行安装\config\backup.php