如何通过laravel 5.4发送邮件时删除“via”和服务器名称而不是php邮件功能

时间:2017-06-20 07:56:12

标签: smtp laravel-5.4

我在laravel 5.4项目中使用smtp发送电子邮件。

    Mail::send('emails.passwordreset-user', ['token' => $originalToken, 'name' => $dataWithEmail->first_name,'email' => $supportEmail], function($message) use ($dataWithEmail) {

        $message->to($dataWithEmail->email, $dataWithEmail->first_name)->replyTo($dataWithEmail->adminEmail, 'Sender name')
                ->subject('Password Reset');
    });

我需要删除刚刚从电子邮件地址中显示的“via servername”。 我发现我们可以在php邮件功能中解决使用-f参数的问题。但是如何在laravel 5.4中处理相同的事情。

1 个答案:

答案 0 :(得分:0)

首先,请看一下:https://stackoverflow.com/a/14964547/9764507。您需要设置SPF和DKIM。

然后,为您的电子邮件创建Mailable,并使用Return-Path build()方法中的Mailable标题进行尝试:

public function build()
{
    $this->view('emails.passwordreset-user');

    $this->withSwiftMessage(function ($message) {
        $message->getHeaders()
                ->addTextHeader('Return-Path', 'return@yourdomain.com');
    });
}

有关Mailables的更多信息:Writing Mailables