Изменение пути возврата с помощью PHPMailer - PullRequest
9 голосов
/ 12 августа 2010

Есть ли способ изменить обратный путь, используя 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 ]

24 голосов
/ 13 августа 2010

Следующее решило проблему, я настроил свойство Sender, и оно работало для меня.$mail->Sender = 'test@email.co.za';

6 голосов
/ 10 апреля 2014

правильный способ установить returnpath (по состоянию на июль 2013 года) - использовать:

$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 голосов
/ 30 апреля 2014
$mail->Sender = 'noreply@domain.com';
1 голос
/ 12 августа 2010

Наиболее вероятная причина этого заключается в том, что почтовый сервер, на который вы отправляете эту почту, использует определенный путь возврата.Это часто относится к «размещенному» веб-пространству.

В этом случае у вас не так много вариантов.Попробуйте поговорить с вашим хостером.

0 голосов
/ 12 августа 2010

Вместо использования заголовка Reply-path попробуйте следующее:

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

Я использую заголовок Reply-to и добился большого успеха даже на общих пространствах.

...