GmailやYahooメールで、迷惑メールと判定されないように、GoogleApps+独自サーバ(GMOクラウド)+PHPでメールを送る場合にやること


今回GoogleAppsで管理しているドメインで、新たにサーバを立てて、
PHPからメールを送る必要があった。

その場合、当初はGmailのSMTPサーバを利用して送信していたが、
メールの送信数の規制に引っ掛かるらしく、GoogleAppsを有料すれば、最大送信数は、
増えると書いてあったので、有料版に移行してみたが状況変わらずだったので、
立てたサーバにsendmail入れて送るようにした。
(送っていたのは多い時で、1時間に100人~200人が申し込みがあり
その仮登録のメールを送っていた。これくらいでgmailとしては規制にひかかってきた。
Googleに連絡みたが、spam業者としては認定されていなくて単純に送信数オーバーとのこと)

今回の場合は、通常のメールはPOPもSMTPもGmailを利用するが、
PHPから送る場合だけ、今回立てたサーバのSMTPとなる。

これでメールは送信数の制限はかからないけど、届いた先で迷惑メールに
なってしまうので、色々やってみた。


今回やった設定は主に3つ

1.Return-pathの設定
2.MXレコードの登録
3.SPF認証の設定


主に以下のサイトを参考にしていたけど、大量に送るサーバじゃないので、
対応したのは↑三つ
Gmailスパムフィルタと壮絶に闘ってみた


1.Return-pathの設定
基本的には、コーディングしてもらっていた当初から、ヘッダーに現れるドメイン名は
統一されていて、スパムと判定されそうなところはなかった。
mb_send_mail関数を使っている場合は第5引数を指定する。
mb_send_mail

2.MXレコードの登録
今回は、同じドメインで、Gmaiのメールサーバと今回のサーバと併用するので、
DNSとしては、MXに両者のサーバの値を設定した。
以下はお名前.comのDNSの設定、①がgmailの部分で、②で優先度を下げて、今回のサーバの
ドメインとIPを登録している。



3.SPF認証の設定
SPFについてはこのあたりか。http://www.infomania.co.jp/techinfo/domainkeys.html

今回設定したのは、以下のサイトを参考に画像の③の部分

評判のさくらのVPSでSMTP(Sendmail)を公開する時にやっておきたいこと





この設定で、Gmailで受信した場合は、ヘッダーで、Received-SPF: SoftFail
Yahooメールで受信した場合は、Received-SPF: Passとなった。


が、しかし1、2、3をやってgmailは迷惑メールとならないのに、
Yahooメールがどうしても迷惑メールになる。


やはり、Gmailスパムフィルタと壮絶に闘ってみた評判のさくらのVPSでSMTP(Sendmail)を公開する時にやっておきたいことも言っている、IPからの逆引きが出来ないとやはり駄目か・・・。
ただしまったことにすでに運用しているサーバはGMOのパブリッククラウドを利用していて、
逆引き設定出来ないと明言されていた・・・。申込の時はあんまり気にしていなかった・・・。

GMOクラウド、IPアドレス
「グローバルIPアドレスのDNS逆引きレコードは設定済みにてご提供いたします。
任意ホスト名への変更は承っておりませんのでご了承ください。」


Amazon EC2のサーバからメール送信をするまでにやるべきこと (スパムメール扱いを回避する!)

駄目もとでGMOにも聞いてみた。AWSとかは逆引き出来ますが、出来ますか?今後対応していかれますか?
「NO!」
予想はしていたけどそうだよね~。承ってないって明記してるもんな・・・。
ちなみに逆引きすると「**.****.public.gmocloud.com」みたいなのが帰ってきます。


そんな時に見つけたのが、以下の記事

Yahoo!メール迷惑メールに振り分けられる
http://d.hatena.ne.jp/taka_mori/20090805/1249441550

なんとYahooは説明すると手動で解除してくれると。
やってみました。2、3通メールのやり取りして、変な業者じゃないとわかってくれて、
見事迷惑メールに振り分けられないようになりました!
Yahooさんありがとー。


Yahooさんもそうですが、毎回だけど、参考にさせていただく先駆者のおかげで助かる。


でも、逆引き設定しないと他のメールサービスではどうなるかな~。
GMOさんともう少しメールでやりとりしてみます。