Назад | Перейти на главную страницу

Отправка почты из PHP дает адрес Unrouteable

У меня есть сервер Debian, на котором запущены PHP и Exim4 (среди прочего, конечно). Приложение PHP отправляет тысячи писем каждый день, и все они работают нормально, однако теперь у меня есть новый клиент, и у моего PHP / Exim4 проблемы с отправкой на эту учетную запись.

PS Я добавил --at--, чтобы краулеры не находили адреса.

  1. Я проверил логи exim4 и обнаружил следующее:
2014-04-02 08:48:10 1WV7TW-0001Em-Od <= support --at-- sobs.com.au H=localhost [127.0.0.1] P=esmtp S=1215 
2014-04-02 08:48:11 1WV7TW-0001Em-Od ** az --at-- mentonegrammmar: Unrouteable address 
2014-04-02 08:48:11 1WV7TW-0001Em-Od Completed
  1. Затем я проверил маршрутизацию в exim4, используя:
# exim -bt az --at-- mentonegrammar
R: dnslookup for az --at-- mentonegrammar
az --at-- mentonegrammar
router = dnslookup, transport = remote_smtp
host mail.mentonegrammar [58.96.103.231] MX=5

Похоже, маршрутизация работает отлично. Я снова попробовал отправить адрес электронной почты приложения, но по-прежнему получаю сообщение об ошибке «Не маршрутизируемый адрес».

  1. Затем я попробовал написать письмо из командной строки с того же сервера.

    echo "Test message" | mail -s "Test message" az --at-- mentonegrammar
    

Это письмо сработало и пришло по мере необходимости, но письмо от моего PHP-приложения по-прежнему не работает.

  1. Проверил приложение:
$mime = new Mail_mime();
$mime->setHTMLBody($body);
$content = $mime->get(array('html_charset' => 'utf-8'));
$formattedHeaders = $mime->headers($headers);
$smtp = Mail::factory("smtp", array());
$result = $smtp->send($headers["To"], $formattedHeaders, $content);
  1. Как уже упоминалось, этот сервер и приложение успешно отправляют тысячи писем.

  2. ИТ-служба Mentone Grammar не сообщила о каких-либо проблемах с получением других писем.

Таким образом, я все время возвращаюсь к ошибке «Не маршрутизируемый адрес» в журнале exim4 и к отладочной информации, указывающей, что адрес маршрутизируемый. Я не могу избавиться от мысли, что есть какая-то проблема с конфигурацией Exim4, но только при получении почтового запроса из приложения PHP, это вопрос безопасности - я просто не знаю.

Кто-нибудь может указать мне правильное направление, пожалуйста?

Не уверен, возможно опечатка, но в одном случае у вас три mmm (см. журналы exim4), а в другом - два mm (см. свой тест маршрутизации и echo test) в доменном имени:

mentonegrammmar.net (does not exist)

mentonegrammar.net (exists)

Дважды проверьте правильность доменного имени в своем PHP применение.