Использование 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