ソニーペイメントサービスの2つの決済モジュール

送信したメールが迷惑メール扱いになる場合の対処

ネットショップから送信されるメールがお客様のところに届かない、あるいは受注報告メールが管理者のところに届かないといった相談をしばしば受けます。その症状は、受信する人によって異なりますが、Gmailで受信する人に特に顕著に現れます。これはメールがスパム判定されてしまっているためです。

ではなぜメールがスパム(迷惑メール)に判定されるのでしょうか。 Gmailのドキュメントを見てみると次のように書かれています。

Gmail では、送受信されるメールが認証済みであることを検証することによってメールを保護しているため、認証されていないメールは迷惑メールに分類されることがあります。メールの認証は、SPF、DKIM、DMARC を使って行われます。

つまり、Gmailではメールを受信する際にSPF、DKIM、DMARCといった3つの検証を行い、不審なメールと判定した場合は、そのメールを迷惑フォルダあるいはゴミ箱に移動させているという事です。

実際には、この3つのうち SPF の検証にパスすれば正常にメールが受信されるようです。DKIM、DMARC は今後普及していくと思われますが、今回は SPF 検証にパスするための方法をご案内します。

 

SPF 検証で迷惑メールと判定される理由

この検証では、メールを送信しているサーバーが、本当に送信者のサーバーかをチェックしています。チェックの方法としては、メール送信サーバーのドメインと、送信元(メール送信者)のメールのドメイン(メルアドの@の後ろの部分)が同じかどうかを見ています。(実際にはもっと複雑ですが)

【送信元のドメイン】
送信元というのはメールのFromにあたるもので、Welcartでは基本設定で指定している「受注メールアドレス」にあたります。このメールの@の後ろの部分がドメインです。

【送信サーバーのドメイン】
環境によって異なりますが、一番シンプルなパターンとしては、サイトのドメインということになります。Welcart がメールを送信しますが、実際にはWebサーバーがメールを送信しており、そのドメインとはショップのURLの先頭の部分です。

このパターンで考えれば、受注メールアドレスのドメインはショップのドメインと同じでなければいけないということになります。

受注メールアドレス***@mydomain.com
サイトのURLhttps://mydomain.com/

この様になっていれば、ほとんどの場合迷惑メールと判定されることはなくなります。

 

異なるドメインのメールを使用したい

では、受注メールアドレスに別のドメインのメールを使用できないのでしょうか。 今まで運用してきたメールアドレスを、ショップのメールとして利用したいというのはよくあります。例えば自社のメールは ***@mydomain.co.jp というものがあり、新しく立ち上げたショップ https;//mydomain.com/ で引き続き利用したい場合です。

受注メールアドレス***@mydomain.co.jp
サイトのURLhttps://mydomain.com/

この様な場合、mydomain.com が mydomain.co.jp のものであるという事を証明しなくてはいけません。この証明を行うのがSPF認証と呼ばれるものです。

 

SPFの設定

SPFの設定は、ネームサーバー(DNSサーバー)にSPFレコードを追加するという作業になります。 利用しているドメインには必ずネームサーバーがあり、そのドメインに対応するIPアドレスが設定されています。一般的にネームサーバーはドメインを取得したサービスに含まれていますので、ドメインの管理画面を確認してみると良いです。

注意
ネームサーバーでのレコードの設定に間違いがあると、サイトが見えなくなったりメールの送受信ができなくなったりしますので注意が必要です。設定が反映されるのに時間がかかりますので、ミスをした場合の影響は大きくなります。
また、ネームサーバーが別の場所にある(パートナー企業が管理している)場合も注意が必要です。例えばこのような失敗がありました。

お名前.comでドメインを取っているが、ネームサーバーは外部のものを使用する設定になっている。ドメイン所有者はその状況を忘れてしまい、お名前.comのネームサーバーに設定を行ってしまった。

この場合、外部のネームサーバーは自動的に外されてしまいます。つまりサイトが正常に表示されなくなってしまいました。

 

どのドメインのネームサーバーにSPFレコードを追加するか

SPFレコードは送信元(差出人)のメールアドレスのドメインのネームサーバーに追加します。上記の例でいえば、受注メールアドレスが送信元なので、mydomain.co.jp のネームサーバーに追加することになります。

 

SPFレコードには何を書くか

メールを送信しているサーバーのホスト名(ドメイン)あるいはIPアドレスを書きます。上記の例で言えばmydomain.comということになります。ただし、プラグイン(WP Mail SMTP など)によってメール送信サーバーが変更されている場合がありますので注意が必要です。あくまでメールを送信しているサーバーを書かなくてはいけません。

SPFレコードの例 SPFレコードと言っていますが、実際にはTXTレコードに以下を追加します。

v=spf1 a:mydomain.com ~all

ゾーンはこのようになります。

mydomain.co.jpTXTv=spf1 a:mydomain.com ~all

 

さくらサーバーのメールボックスをSMTPとして送信している場合

mydomain.co.jpTXTv=spf1 a:mydomain.com a:****.sakura.ne.jp ~all

SPFのフォーマットについてはこちらの記事などを参照してください。

 

まとめ

Welcart 基本設定の受注メールアドレスに設定するメールアドレスは、サイトのドメインと同じドメインのメールアドレスを指定する。

どうしても別のドメインのメールアドレスを設定したい場合は、ネームサーバーにSPFレコードを設定する。設定するネームサーバーは、送信元メールアドレスのドメインが設定されているネームサーバーであることに注意する。