Использование Return-path при отправке почты через SMTP с использованием PHP

Есть ли способ установить Return-путь при отправке почты через аутентифицированный SMTP с использованием PHP? Я хочу, чтобы отскочившие письма были перехвачены другим адресом электронной почты, нежели адрес отправителя.

Я знаю, что есть способ сделать это с помощью "обычной" PHP-функции mail() (установив флаг "-f" в 5-м параметре), но я понятия не имею, как управлять этим с помощью SMTP.

Также пробовал Почтовый пакет PEAR, но установка Return-path в заголовках не делала работу.

2 ответа

Вот что тебе нужно сделать.

Вам нужно установить 'Return-Path' в Заголовках на адрес электронной почты, который вы хотите использовать в качестве вашего отказов. Это сработало для меня.

Например:

$headers['From']    = 'richard@example.com';
$headers['To']      = 'joe@example.com';
$headers['Subject'] = 'Test message';
$headers['Return-Path'] = 'bounce@example.com';

Установите четвертый mail()-параметр (additional_headers) чтобы "Return-path:mybouncereceiver@example.com",

Пример:

$to     = "to@example.com";
$from       = "from@example.com";
$bounce     = "mybouncereceiver@example.com";
$subj       = "mysubject";
$message    = "blah";

$headers    = "From:$from\r\nReturn-path:$bounce"

mail($to, $subj, $message, $headers);

Вы можете видеть, что вы отделяете несколько additional_headers с \r\n (строки).

Смотрите также: http://php.net/manual/en/function.mail.php

Другие вопросы по тегам