Главная > Unix > sendmail локальный домен

sendmail локальный домен

Проблема с доставкой писем, отправленных с помощью функции php mail() на почтовые ящики локального домена, когда у домена указаны внешние MX записи, например, Яндекс.
В примере с сайта mydomain.ru отправляется письмо на ящик [email protected]
sendmail пытается доставить письмо на локальный почтовый ящик, и возвращает ошибку:

Apr 14 11:48:24 mydomain sm-mta[1256]: v3E8mOKX001256: <user@mydomain.ru>... User unknown
Apr 14 11:48:24 mydomain sendmail[1255]: v3E8mOSK001255: to=user@mydomain.ru, ctladdr=www-data (33/33), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=91914, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown

Но, даже если такой пользователь и существует, почту он получает с другого сервера, в нашем случае с mail.yandex.ru
Входные данные:

root@mydomain:~# cat /etc/hostname
mydomain.ru
root@mydomain:~# cat /etc/hosts
127.0.0.1	localhost
111.111.111.111	mydomain.ru	mydomain

Добавляем в:

root@mydomain:~# mcedit /etc/mail/sendmail.mc

в конец файла (разные открывающиеся и закрывающиеся кавычки — так и нужно)

define(`MAIL_HUB',`mydomain.ru.')dnl
define(`LOCAL_RELAY',`mydomain.ru.')dnl

затем

root@mydomain:~# cd /etc/mail/
root@mydomain:/etc/mail# make all reload
root@mydomain:/etc/mail# make all -C /etc/mail
root@mydomain:/etc/mail# reboot

На основе: http://promote-sites.ru/blog/server/mail-from-yandex-and-sendmail.html

Categories: Unix Tags:
  1. Пока что нет комментариев.
Похожие публикации