Я управляю всего несколькими сайтами с VestaCP, у каждого сайта есть свой домен, и пока он работает хорошо. Сервер включен Линод.
Я реализовал очень простой Форма обратной связи на одном из сайтов, использующих php mail()
:
$success = mail($EmailTo, $Subject, $Body, $headers);
Что касается заголовков $, я упростил их после проб и ошибок: $headers = 'From: '. $EmailFrom;
Теперь, конечно же, я пытаюсь отправить не доходя информационное окно или мой личный почтовый ящик.
Итак, я попробовал протестировать через SSH. Сначала я настроил журнал почты, чтобы я мог видеть эту строку, которую разместил выше, я убедился (через phpinfo()
), что PHP использует предполагаемый ящик sendmail (/usr/sbin/sendmail
). Казалось, что это не PHP /php.ini
это вина.
Затем я прочитал здесь, на serverfault.com, чтобы попробовать следующее короткий сценарий sendmail (поскольку оказывается, что я не знаю, как отправлять электронную почту, просто используя CLI):
Этот тест, казалось, прошел хорошо (много данных), и это действительно достигает мой личный почтовый ящик (конечно, папка для спама):
#!/bin/sh
/usr/sbin/sendmail -i -v -- mybox@gmail.com <<
subject: testeando
asastest
END
Но затем я запускаю тот же сценарий, просто меняя его на info@goodsite.org, и, помимо того, что он не достигает, сценарий говорит следующее:
LOG: MAIN
** info@goodsite.org: Unrouteable address
LOG: MAIN
<= <> R=1XnGAV-0004VJ-UP U=Debian-exim P=local S=1113
LOG: MAIN
Completed
delivering 1XnGAV-0004VN-VO
LOG: MAIN
** root@linodecentral: Unrouteable address
LOG: MAIN
Frozen (delivery error message)
Теперь я застрял. Я не знаю, как Gmail "маршрутизируется", но идеально работающий домен google-MX - нет. Кроме того, я не знаю, связано ли с этим мое имя хоста (linodecentral)?
Подводя итоги:
РЕДАКТИРОВАТЬ:
Вот что говорит основной журнал exim4 при попытке info @ goodsite:
2014-11-08 23:23:20 1XnEPg-0001bg-Hb <= pvc@LinodeCentral U=pvc P=local S=495
2014-11-08 23:23:20 1XnEPg-0001bg-Hb ** info@goodsite.org: Unrouteable address
2014-11-08 23:23:20 1XnEPg-0001bk-IY <= <> R=1XnEPg-0001bg-Hb U=Debian-exim P=local S=1287
2014-11-08 23:23:20 1XnEPg-0001bg-Hb Completed
2014-11-08 23:23:20 1XnEPg-0001bk-IY ** pvc@linodecentral: Unrouteable address
2014-11-08 23:23:20 1XnEPg-0001bk-IY Frozen (delivery error message)
И это при попытке моего личного почтового ящика (который правильно отправляет):
2014-11-09 01:02:38 1XnFxm-00047Z-3L <= root@LinodeCentral U=root P=local S=320
2014-11-09 01:02:38 1XnFxm-00047Z-3L => mybox@gmail.com R=dnslookup T=remote_smtp H=gmail-smtp-in.l.google.com [2a00:1450:400c:c01::1b] X=TLS1.2:RSA_ARCFOUR_SHA1:128 C="250 2.0.0 OK 1415491358 ey11si10238321wid.16 - gsmtp"
2014-11-09 01:02:38 1XnFxm-00047Z-3L Completed
Я не знаю, почему он использует корень отправить на мой личный почтовый ящик и пвх (пользователь, владелец папки веб-сайта и еще много чего) по другому адресу.
PS: obv "goodiste.org" - это просто место для реального домена.
Попробуйте проверить, видит ли хост линода правильные записи MX для вашего целевого домена ...
dig MX good domain.org
Это должно показать серверы Google. Если нет, у вас проблема более низкого уровня.
Доменная часть адреса отправки обычно берется из того, что находится в / etc / hosts для локального компьютера. По крайней мере, вы хотите, чтобы это был файл fqdn. Вы можете изменить это в конфигурации MTA.
Журналы eximʻa должны показать вам, почему доставка на локальные адреса не выполняется.