PHPMailer отказывался от почты, которая не получала правильного ответа

Я написал скрипт PHP, который отправляет письма. Я отправляю их с «mail@something.com», а также установил для «Return-Path» значение «bounce@something.com», но я по-прежнему получаю письма с отклоненной отправкой («mail@something.com») «).

Вот урезанный код:

$this->mail = new PHPMailer();
$this->mail->isSMTP();
$this->mail->Host = 'host';
$this->mail->SMTPAuth = true;
$this->mail->Username = 'mail@something.com';
$this->mail->Password = 'pass';
$this->mail->SMTPSecure = 'tls';
$this->mail->Port = 25;
$this->mail->ReturnPath = 'bounce@something.com';
$this->mail->From = 'mail@something.com';
$this->mail->send();

Как заставить принудительно отправленные письма перейти на учетную запись отказов? Спасибо за любую помощь!

0

Решение

Не использовать ReturnPath — задавать Sender вместо. Поддержка для ReturnPath свойство было недавно отключено в PHPMailer (в версии 5.2.8), потому что его нельзя устанавливать в точке отправки. Обратный путь добавляется получателем при получении сообщения и устанавливается путем помещения желаемого обратного пути в Sender свойство, которое передается как отправитель конверта во время SMTP-диалога. Sender устанавливается автоматически при звонке setFrom, но вы можете переопределить его и просто установить его напрямую, вот так:

$this->mail = new PHPMailer();
$this->mail->isSMTP();
$this->mail->Host = 'host';
$this->mail->SMTPAuth = true;
$this->mail->Username = 'mail@something.com';
$this->mail->Password = 'pass';
$this->mail->SMTPSecure = 'tls';
$this->mail->Port = 25;
$this->mail->setFrom('mail@something.com');
$this->mail->Sender = 'bounce@something.com';
$this->mail->send();
9

Другие решения

Добавьте эту строку в ваш код:

$this->mail->AddReplyTo("youraccount@gmail.com","Your name");
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector