Laravel 11中邮件未发送至指定用户邮箱,默认发送到.env的MAIL_TO_ADDRESS问题求助
Laravel 11中邮件未发送至指定用户邮箱,默认发送到.env的MAIL_TO_ADDRESS问题求助
各位好,我在Laravel项目里做用户创建后发送通知邮件的功能时遇到了问题:邮件并没有发送给目标用户的邮箱,反而默认发到了.env文件里设置的MAIL_TO_ADDRESS地址,想请教大家怎么排查解决这个问题。
我是这样调用邮件发送逻辑的(UsersController.php):
.... $user_created = (new UserCreated($user)) ->onQueue('emails')->afterCommit(); Mail::to($user->email) ->queue($user_created); .....
这是对应的Mailable类UserCreated.php:
<?php namespace App\Mail; use App\Models\Listing; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Mail\Mailable; use Illuminate\Queue\SerializesModels; use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\URL; use Throwable; use Illuminate\Mail\Mailables\Content; use Illuminate\Mail\Mailables\Envelope; use Illuminate\Mail\Mailables\Address; class UserCreated extends Mailable { use Queueable, SerializesModels; /** * Create a new message instance. * * @return void */ public function __construct(protected User $user) {} /** * Get the message content definition. */ public function content(): Content { return new Content( markdown: 'emails.users.created', with: [....] ); } /** * Get the message envelope. */ public function envelope(): Envelope { return new Envelope( from: new Address(config('mail.from.address'), config('mail.from.name')), subject: 'test' ); } }
我确认$user->email是有正确值的,但邮件就是一直发送到.env里配置的MAIL_TO_ADDRESS=admin@myweb.com,有没有小伙伴遇到过类似的问题?或者能帮我看看代码哪里可能出问题了吗?
备注:内容来源于stack exchange,提问作者Luis
相关产品推荐
相关产品推荐

