Laravel 正在使用我的旧电子邮件配置发送邮件

Laravel is sending mail using my old email configuration

我已经在 .env 文件中更改了我的电子邮件配置,但是当我尝试发送邮件时,它使用的是我的旧配置。

我尝试了一些命令:

php artisan clear-compiled, php artisan cache:clear, 和 php artisan config:clear 但它仍在使用我的旧电子邮件发送。

我也尝试更改我的旧 Gmail 帐户的密码,但我的网站只能使用我的旧邮件帐户发送邮件。

我注意到了这一点:

This message may not have been sent by: [redacted]@gmail.com Learn more Report phishing

关于收到的邮件。

当你发送电子邮件时,通常你会使用一些邮件库,你可以选择 ->from("email@domain.com") 参数。然后使用电子邮件驱动程序发送此电子邮件对象。电子邮件驱动程序然后使用环境设置连接到 smtp 帐户,例如

因此更改环境变量将更改实际电子邮件发件人的帐户,但我假设您忘记更改 ->from("..") 参数。

这解释了为什么您会看到一条通知说这可能不是由...

尝试清除配置缓存。我确实使用了 php artisan config:clear

更改新电子邮件配置后,确保运行终端中的此代码

php artisan 清晰编译,php artisan cache:clear,php artisan config:clear

现在电子邮件来自新配置,但是发件人电子邮件和名称来自旧电子邮件配置。但有时来自新的电子邮件和姓名。

所以直接在电子邮件代码中提及电子邮件和名称,而不是在 .env 或配置文件中 像这样 Mail::queue('emails.email_confirm', $data, 函数($message) 使用($user,$data) { $message->from(FROM_MAIL, FROM_MAIL_NAME)->to($user->email, $user->first_name)->subject($data['subject']); });

以后试试这个对我有用

谢谢....

如果您从队列发送电子邮件,请尝试使用 php artisan queue:restart 重新启动队列。

这解决了我的问题。我已经尝试了 composer dump-autoloadphp artisan clear-compiledphp artisan cache:clearphp artisan config:clear,但他们没有解决我的问题。