15

有没有办法使用 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";
    }

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

4

5 回答 5

27

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

于 2010-08-13T09:42:39.360 回答
10

设置返回路径的正确方法(截至 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).'>');
}
于 2014-04-10T02:54:21.407 回答
3
$mail->Sender = 'noreply@domain.com';
于 2014-04-30T14:33:29.513 回答
1

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

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

于 2010-08-12T12:25:40.390 回答
-2

不要使用回复路径标头,请尝试以下操作:

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

我使用回复标题,即使在共享空间上也取得了巨大的成功。

于 2010-08-12T12:58:56.120 回答