Следующие заголовки отправляются с помощью функции PHP mail():
$emailheaders = "From: " . $sender . "\n";
$emailheaders .= "Return-Path: " . $sender . "\n";
$emailheaders .= "MIME-Version: 1.0\n";
$emailheaders .= "Content-type: text/html; charset=UTF-8\r\n";
mail($email, $subject, $body, $emailheaders);
Он работает нормально, за исключением того, что Return-Path:
сбрасывается на [email protected]
, или, по крайней мере, это то, что отображается при просмотре расширенных заголовков для электронных писем, полученных с использованием вышеуказанных заголовков. Естественно, это означает, что отказы по электронной почте не приходят.
Сбрасывает ли Apache заголовки, и в этом случае почему, или я неправильно использую mail()
?
Что я могу сделать, чтобы этого не произошло. Об использовании пятого параметра mail()
(например, -f [email protected]
) не может быть и речи, поскольку PHP находится в безопасном режиме, и провайдер не изменит его. Я полагаю, что нет никакого способа разрешить пятый параметр для определенных пользователей, несмотря на то, что безопасный режим включен.
На сервере работают Apache 2.2.3 и PHP версии 5.1.6.
Reply-To
и посмотреть, что произойдет? И теперь вы смешиваете '\n' и '\r\n'. В большинстве примеров почты php используется \r\n, так что вы можете сначала исправить это. - person huysentruitw   schedule 18.12.2012