laravel 邮件外观队列函数将邮件发送到错误的邮件主机

laravel mail facade queue function sends mail to wrong mailhost

我使用 laravel 5.8 版。 为了通过队列发送非阻塞邮件,我使用 documents 中描述的邮件外观。 在开发中,我使用 mailtrap.io 来证明邮件已发送,在生产中,我使用实际的 smtp 服务器。 使用 Mail::send 方法通过实际的 smtp 服务器发送邮件。使用 Mail::queue 方法,邮件仍然通过 mailtrap.io 服务器发送,尽管我刷新了配置缓存。

我能找到的文件中 mailtrap.io 的唯一参考是在我的开发 .env 文件中,我不在生产中使用它。

我不明白为什么使用队列将邮件发送到 mailtrap.io 服务器,而不是像在邮件外观上使用发送那样发送到 smtp 服务器。

找到了。以 php artisan queue:work 开头的线程保持旧配置,直到它们停止(并重新启动)。 我在系统上有主管 运行 来启动线程。我是在维护模式和临时开发环境下这样做的。这保留了队列的 mailtrap.io 引用。 停止并重新启动主管后,线程现在使用生产环境,因此使用正确的 smtp 服务器。