「修飾されていないホスト名(foo.bar)が不明」問題


31

wordpressプラグインsendmailを使用してメールを開始または送信しようとすると、このエラーが表示されます:maillog

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

後はグーグルで最高のアドバイスを、「/ etc / hostsファイルに追加foo.bar」だったが、それはすでに次のとおりです。

127.0.0.1     localhost localhost.localdomain
127.0.0.1     foo.bar

回答:


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し、単一行バージョンで使用します。


1
私の問題を修正しました。明確にしたいのですが、この行に入力するのはホスト名です。\ etc \ hostsのこの行に追加するのではなく、まずhostnameコマンドを使用して検索します。ありがとう。
レオン

私にとっては
うまくいき

または、実際に存在し、適切に構成されたドメイン名を使用します。少なくともメールを配信したい場合は、そうすべきです。
サミッチ

それを少し明確にするために-foo.barはあなたのものhostnameである必要があり、ホスト名を簡単に実行できます$ hostname。次に、このソリューションで提案されているように、表示されているホスト名をその行に追加します
Shir Gans

0

単に@rjstellingが示唆するように、あなたのホストファイルにドメインを追加するだけで、あなたのメールができるようになります送信され、それが誰かの受信トレイ内の土地に非常にほとんどありません。

迷惑メールとしてフラグ付けされないメールを送信するには、受信サーバーが配信試行を終了したり、メッセージをドロップしたりすることは言うまでもありませんが、実際の登録済みドメイン名と作業DNSおよびMXレコードを使用する必要があります。

そして、それはFCRDNSや、ほとんどの場合に実際に電子メールが受け入れられる可能性のあるサーバーを実行するために必要な数十のことのいずれにも当てはまりません。[インターネットの神があなたに少しでも微笑んでいる場合]本当の答えは、おそらく自分のメールサーバーを実行すべきではないということです。SendGrid、MailChimpなどのメールサービスを調べます。


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、2行目を削除するとmail送信が許可され、エラーは発生しません。

更新:実行sudo ...whatever..中にメッセージsudo: unable to resolve host foo.barが表示されますが、何にも影響しないように見えます。

ところで、再起動せずにホスト名サービスを再起動するには:

    systemctl restart systemd-hostnamed

Ubuntu 16.04では、mail編集後に作業する必要はありません/etc/hosts

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.