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

Почта не отправляется на конкретный домен

Мы используем функцию php mail для отправки писем нашим клиентам. Несколько дней назад мы обнаружили, что электронная почта доставляется не только hotmail.com домен. Я проверил журнал электронной почты, чтобы увидеть, есть ли сообщения об ошибках, и вот что я нашел:

Aug 30 23:02:50 XXX sendmail[35378]: AXXX: to=<XX@hotmail.com>, ctladdr=<apache@XXX> (48/48), delay=00:00:05, xdelay=00:00:05, mailer=esmtp, pri=121148, relay=mx.XXX. [], dsn=5.6.0, stat=Data format error

Aug 30 23:02:50  sendmail[35378]: DSN: Data format error

Что это Ошибка формата данных и как это исправить? Что это за ctladdr и нужно ли мне устанавливать его с помощью PHP или нет? Нужно ли мне обращаться к провайдеру сервера по поводу этой проблемы, или это проблема, связанная с моим приложением php?

Мой PHP-код для отправки писем:

       function send_email( $name_from, $email_from, $email_to, $subject, $message, $headers="" ) {

    $returnVal = 0;

    // made it through validation, send email
    $subject = trim( $subject );
    $message = trim( $message );
    $headers .= "FROM: $name_from <$email_from>";

    if( mail( "$email_to", "$subject", "$message", "$headers") or die ( trigger_error ( "Error: ", E_USER_ERROR ))) {
        $returnVal = 1;
    }
    return $returnVal;
}

Как вы можете видеть в моем $headers Я установил поле ОТ.

Спасибо за ответы?

Доменное имя вашего сервера не принимается (используется в FROM). Оно либо неразрешимо, либо имеет неверный формат и т. Д.