Выполнение следующего фрагмента кода не работает. Письмо так и не получено. Обратите внимание, что я использую фиктивные значения для электронной почты и домена.
$to = "email@domain.com";
$subject = 'Mail Test';
$headers = '';
$message .= 'domain123.com';
$sent_message = mail( $to, $subject, $message, $headers );
Но когда я заменяю domain123.com чем-нибудь, что не содержит этого текста, электронное письмо работает.
Мой почтовый журнал пуст, и у меня включен PHP display_errors. Похоже, где-то есть фильтр, который убивает электронную почту, если у нее есть этот домен в теле. У меня нет этой проблемы с другими веб-сайтами на этом же сервере. Насколько я могу судить, домен не занесен в черный список.
Я использую PHP 5.4 с Apache 2.2.15 на Linode с CentOS 6.5.
Забыл опубликовать ответ на это. Проблема заключалась в том, что IPV6 включен по умолчанию, и у меня не было настройки записей IPV6 SPF. Согласно тому, что я прочитал, я мог либо настроить соответствующие записи SPF, либо отключить IPV6 в exim. Я выбрал второе. Я сделал это, добавив следующую строку в /etc/exim/exim.conf и перезапустив exim.
disable_ipv6=true