使用PHPMailer更改返回路径

时间:2010-08-12 12:21:10

标签: php phpmailer

有没有办法使用PHPMailer

更改返回路径

我做了以下操作并且无法正常工作

$mail->AddCustomHeader('Return-path:test@email.co.za');

我正在使用以下语句发送邮件

if(!$mail->Send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;

    } else {
        //Building the reporting email to report on all the mails send 
        echo "Message REPORT sent!\n";
    }

我收到了电子邮件,但返回路径没有变化?

5 个答案:

答案 0 :(得分:23)

以下解决了这个问题,我调整了Sender属性,它对我有用。 $mail->Sender = 'test@email.co.za';

答案 1 :(得分:5)

设置returnpath的正确方法(截至2013年7月)是使用:

$mail->ReturnPath='bounce_here@domain.com';

phpmailer源包含以下内容,这就是为什么我认为$ mail-> Sender工作

if ($this->ReturnPath) {
  $result .= $this->HeaderLine('Return-Path', '<'.trim($this->ReturnPath).'>');
} elseif ($this->Sender == '') {
  $result .= $this->HeaderLine('Return-Path', '<'.trim($this->From).'>');
} else {
  $result .= $this->HeaderLine('Return-Path', '<'.trim($this->Sender).'>');
}

答案 2 :(得分:2)

$mail->Sender = 'noreply@domain.com';

答案 3 :(得分:1)

最可能的原因是您发送此邮件的邮件服务器强制执行特定的返回路径。这通常是“托管”网站空间的情况。

在这种情况下,您没有很多选择。试着和你的主人谈谈。

答案 4 :(得分:-2)

请尝试以下操作:

,而不是使用Reply-path标头
$mail->AddCustomHeader('Reply-to:test@email.co.za');

我使用Reply-to标头,即使在共享空间也取得了巨大成功。