.env 文件中的邮件配置设置更改未在 Laravel 8 中生效
Mail configuration settings changes in the .env file not taking effect in Laravel 8
最初我的 .env 文件中的邮件配置设置指向我的 gmail 帐户,联系表单工作正常。我现在更改了我的设置以指向网络邮件和 运行 php artisan config:cache 但邮件仍在发送到我的 gmail。下面是我的配置设置,我还通过 gmail 向它发送电子邮件并从网络邮件发回 gmail 来测试网络邮件,它工作正常。非常感谢任何帮助。
MAIL_MAILER=smtp
MAIL_HOST=mywebmail
MAIL_PORT=465
MAIL_USERNAME=sales@mydomain
MAIL_PASSWORD=mypassword
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=sales@mydomain
MAIL_FROM_NAME="Laravel"
PS: 我的 config/Mail.php
<?php
return [
'default' => env('MAIL_MAILER', 'smtp'),
'mailers' => [
'smtp' => [
'transport' => 'smtp',
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'timeout' => null,
'auth_mode' => null,
],
'ses' => [
'transport' => 'ses',
],
'mailgun' => [
'transport' => 'mailgun',
],
'postmark' => [
'transport' => 'postmark',
],
'sendmail' => [
'transport' => 'sendmail',
'path' => '/usr/sbin/sendmail -bs',
],
'log' => [
'transport' => 'log',
'channel' => env('MAIL_LOG_CHANNEL'),
],
'array' => [
'transport' => 'array',
],
],
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
问题出在我的控制器上。我正在将电子邮件发送到我的 gmail 而不是我的网络邮件。我更改邮件设置时忘记更改它。将 mygmail 更改为我的 webmail 后,它工作正常。
public function store(Request $request)
{
$data = $request->validate([
//
]);
Mail::to('mygmail.com')
->send(new ContactMe($data));
return redirect(route('contact-us.index'))->with('flash', "Thank you,
we'll be in touch soon");
}
最初我的 .env 文件中的邮件配置设置指向我的 gmail 帐户,联系表单工作正常。我现在更改了我的设置以指向网络邮件和 运行 php artisan config:cache 但邮件仍在发送到我的 gmail。下面是我的配置设置,我还通过 gmail 向它发送电子邮件并从网络邮件发回 gmail 来测试网络邮件,它工作正常。非常感谢任何帮助。
MAIL_MAILER=smtp
MAIL_HOST=mywebmail
MAIL_PORT=465
MAIL_USERNAME=sales@mydomain
MAIL_PASSWORD=mypassword
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=sales@mydomain
MAIL_FROM_NAME="Laravel"
PS: 我的 config/Mail.php
<?php
return [
'default' => env('MAIL_MAILER', 'smtp'),
'mailers' => [
'smtp' => [
'transport' => 'smtp',
'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
'port' => env('MAIL_PORT', 587),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'timeout' => null,
'auth_mode' => null,
],
'ses' => [
'transport' => 'ses',
],
'mailgun' => [
'transport' => 'mailgun',
],
'postmark' => [
'transport' => 'postmark',
],
'sendmail' => [
'transport' => 'sendmail',
'path' => '/usr/sbin/sendmail -bs',
],
'log' => [
'transport' => 'log',
'channel' => env('MAIL_LOG_CHANNEL'),
],
'array' => [
'transport' => 'array',
],
],
'from' => [
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
'name' => env('MAIL_FROM_NAME', 'Example'),
],
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
问题出在我的控制器上。我正在将电子邮件发送到我的 gmail 而不是我的网络邮件。我更改邮件设置时忘记更改它。将 mygmail 更改为我的 webmail 后,它工作正常。
public function store(Request $request)
{
$data = $request->validate([
//
]);
Mail::to('mygmail.com')
->send(new ContactMe($data));
return redirect(route('contact-us.index'))->with('flash', "Thank you,
we'll be in touch soon");
}