发送电子邮件时未获取环境
MAIL_HOST
的价值
请描述为什么会发生这种情况?
try {
Mail::to([
[
'email' => 'abcdef@gmail.com',
'name' => 'ABCD',
],
])->queue(new SendHTMLEmail([
'subject' => "For A Purpose",
'body' => '',
]));
} catch (\Exception $e) { }
答案 0 :(得分:1)
使用队列工作器时,请确保在更新应用程序配置(包括{.env
)时执行以下两项操作:
重新启动队列工作器。代码更改以及配置更改仅在重新启动时由队列工作器接收。
如果您正在生产中运行,或者由于某些其他原因而缓存了配置(使用php artisan config:cache
),那么还必须使用相同的命令重新缓存配置< em>重新启动队列工作器之前。
答案 1 :(得分:0)
这应该在您的.env中可用
MAIL_DRIVER=smtp
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=
config / mail.php
'driver' => env('MAIL_DRIVER', 'smtp'),
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
这两个文件确保您输入了证书。