«Мое неполное имя хоста (foo.bar) неизвестно» Проблема

31

При попытке запустить sendmailили отправить письмо с помощью плагина WordPress эта ошибка отображается в maillog:

"My unqualified host name (foo.bar) unknown; sleeping for retry"

После Googling лучшим советом было «добавить foo.bar в файл / etc / hosts», но это уже так:

127.0.0.1     localhost localhost.localdomain
127.0.0.1     foo.bar
rjstelling
источник

Ответы:

50

Просто изменилось:

127.0.0.1     localhost localhost.localdomain
127.0.0.1     foo.bar

К этому

127.0.0.1     localhost localhost.localdomain foo.bar

Sendmailищет полное доменное имя (FQDN) и будет использовать localhost.localdomainоднострочную версию.

rjstelling
источник
1
исправил мою проблему. Просто хочу быть понятным, это имя хоста, которое должно быть указано в этой строке. Поэтому сначала используйте команду hostname и найдите ее, а затем добавьте в эту строку в \ etc \ hosts. Спасибо чувак.
Леон
У меня это не сработало
user10089632
или фактически использовать доменное имя, которое существует и настроено правильно. По крайней мере, если вы хотите, чтобы ваша почта доставлялась, вам следует.
Саммит
просто чтобы прояснить это немного - foo.bar должен быть вашим hostname, чтобы ваше имя хоста легко запускалось $ hostname. Затем добавьте отображаемое имя хоста в эту строку, как предложено в этом решении
Шир Ганс
0

Просто добавив домен хосты файлов в @rjstelling предлагает только позволит вашей почта будет отправлена , но это невероятно маловероятно , чтобы приземлиться в чьем - то ящике.

Чтобы отправить электронное письмо, которое не будет помечено как спам, не говоря уже о том, что принимающий сервер просто прерывает попытку доставки или отбрасывает сообщение, вам необходимо использовать реальное зарегистрированное доменное имя с рабочим DNS и MX-записью. ,

И это ничего не значит для FCRDNS или любой из десятков вещей, которые вам нужно сделать, чтобы запустить сервер, чья электронная почта может фактически приниматься большую часть времени. [если боги интернета соизволят хотя бы кратко улыбнуться вам] Верный ответ заключается в том, что вам, вероятно, не следует использовать свой собственный почтовый сервер, потому что он просто не стоит той работы, которая необходима для поддержания его в хорошем состоянии. Посмотрите на почтовые сервисы, такие как SendGrid, MailChimp и т. Д.

Sammitch
источник
0

Принятый ответ:

    127.0.0.1   localhost localhost.localdomain foo.bar

кажется, работает, но выдает ошибки в /var/log/syslog:

    sendmail[11655]: gethostbyaddr(192.168.1.123) failed: 1

Но оставив просто

    127.0.0.1   localhost

в /etc/hostsи удаление второй строки позволяет mailполучать отправленные, и не приводит к ошибкам.

Обновление: при этом sudo ...whatever..появляется сообщение sudo: unable to resolve host foo.bar, но, похоже, оно ни на что не влияет ..

Кстати, чтобы перезапустить службу имени хоста без перезагрузки:

    systemctl restart systemd-hostnamed

На Ubuntu 16.04, но не должно быть необходимо для mailработы после редактирования/etc/hosts

user507226
источник