Я у себя на сайте подключил удаленый smtp server. Сначала использовал порт 2525, но потом перестало работать. Поддержка хостинга сказала изменить порт на 587 и всё заработало. Вчера же отвалился и этот порт.
В логах видно, что скрипт выполняет подключение куда надо, но отвечает ему Exim сервер хостинга и всё падает с ошибкой по сертификату. Поддержка хостинга предполагает в качестве мх для домена указать smtp relay сервиса смтп.
Собственно вопрос: это вобще имеет какие-то основания под собой? Каким образом mx запись влияет на отправку писем? Может быть кто-то сможет объяснить подоплёку?
Ziptar, Дело в том, что я не понимаю связи между мх записью и отправлением писем. Нейросети говорят, что это бред. Мх запись нужна исключительно на приёме.
runapa, mx+spf должны быть правильно настроены, чтобы письма доходили на публичные почтовики; саппорту вероятно проще чем с частной проблемой разбираться - завернуть на свой релей, опять же. Но это гадание на кофейной гуще, информации критически мало для любых выводов.
Refguser Я бы с радостью, но документацию чего мне надо читать? Как настраивать сервер? У меня нет туда доступа. Настройку php mailer я сделал, и всё работало. Тем более, что там кроме конфига и настраивать нечего. У меня варианты кончились…
МX запись — только для входящих: говорит другим серверам куда слать тебе, на отправку не влияет. Саппорт перепутал термины.
По симптомам: хостинг перехватывает твой 587-й трафик прозрачным прокси, поэтому вместо удалённого SMTP сервера отвечает их Exim с кривым сертификатом. Попроси у них отключить проксирование или разрешить прямой outbound на 587. Ещё вариант: попробуй порт 465 (implicit TLS вместо STARTTLS), прокси нередко его не трогает.
тогда в PHPMailer добавь SMTPOptions = ['ssl' => ['verify_peer' => false, 'verify_peer_name' => false]] — отключит проверку и подключится через проксируемый 587. Либо проси хостинг разрешить прямой outbound на 587 без прокси.