WordPress
postfix
GoogleApps
ContactForm7

会社の問い合わせフォームから同一ドメイン(GoogleAppsで管理)にメールが届かなかった問題

More than 3 years have passed since last update.

会社のサイトの問い合わせフォームから会社のメールアドレス(Google Appsで管理)に問い合わせ内容メールを送りたかったのですが、届かなくて困ったので記載しておきます。


環境

今回の環境は

VPS

メールはGoogleAppsを利用

・WordPressを設置

・問い合わせフォームとしてContact Form 7を利用

です。


起こった問題と状況

問い合わせフォームからのメールを会社のメールアドレスで受信できませんでした

ですが、Gmailなど、別のアドレスでは受信できました。(⇦ここ重要です)


原因

ローカル配送されていた(メールの送信元と送信先が同一だったので、メールの送受信のやり取りがサーバー内部で完結してしまっていた)ことが原因だったようです。

今回のパターンでは、メールアドレスはGoogleAppsで管理していたので、本来であればメールのやり取りは一度外に出す必要があります。


原因(図解)

文章だけだと分かりづらいので、こんな感じです。

Untitled (1).png


解決策

Postfixというメールサーバーの設定で、同一ドメインだとしてもローカル配送をさせないように設定することが必要です。


設定方法


/etc/postfix/main.cf


この設定ファイルに書いてある

mydestinationが宛先(=サーバー自身が担当していると認識しているアドレス)なので、ここを書き換えましょう。

今回は$myhostname に 会社のドメインが設定してありましたので、

mydestination = $myhostname, localhost.$mydomain, localhost

これを下記のように書き換えました。

mydestination = localhost.$mydomain, localhost


最後に

同じ現象かどうかを確認するポイントとしては

問い合わせメールの送信先をGmailなど、他のアドレスにしてみて、届くかどうかで判断すると良いです。

もしも、その他のアドレスにも送れなかった場合はメールの送信自体が出来ていない可能性があります。

Gmailには送れるが、同一ドメインに送れない場合は同じケースである可能性が高いです。


参考にしたサイト

http://www.communitycom.jp/2012/08/21/google-apps-contact-form-7-smtp/

http://www.ksknet.net/postfix/postfix_2.html