WEBシステム開発・デザイン制作などすべての作業を一貫してご提供しております。(大阪・東京近辺)

PHPスクリプトからメール送信するとX-Authentication-Warningが付く

PHPスクリプトからメール送信しているお問い合わせフォームなどのプログラムで、受信したメールのヘッダー情報にX-Authentication-Warningが付与されている場合があります。

私はサポート中心の業務なので、あまりヘッダー情報を意識したことがありません。

見ても良くわからないのが本音です。

この警告はレンタルサーバーなどの場合、良く聞く話だと思われます。

いろいろと調べて見ると、PHPのmail()関数で-fオプションを付与している場合に、そのFrom指定したメールアドレスが信頼できるものでは無いということ分かりました。

ただ、指定しているメールアドレスは、メールサーバー上に作られており、確かに存在しています。

sendmailサーバーに、phpを実行しているユーザー(apache,nginx)を追加してやれば解決するそうですが、そもそもレンタルサーバーでは、メールサーバーのconf設定は許可されていません。

-fオプションを付けなければ、当然警告メッセージはヘッダーに出力されませんが、Return-Path: に正常なメールアドレスが設定されなくなります。

1ドメインで運用している場合は問題無いのかもしれませんが、レンタルサーバーなどの複数ドメインの場合は問題がでてくるかもしれません。

単純な解決方法として、PHPのmail()関数、sendmailコマンドからのメール送信ではなく、SMTP送信(ユーザー名、パスワードでの認証)で送信すれば解決します。

大量のメールを送信する場合は、SMTP接続のコストが影響してきそうですが、お問い合わせメール、注文メールなどの控えメールなら問題ないでしょう。

X-Authentication-Warningがヘッダー情報に付与されていると、spamメールとして扱われるなどのデマが拡散している見たいです。本当のところは私では分かりませんが、付与されていてもGmailには届いています。