やりたいこと
XSERVERで運用しているWebサイトでPHPを利用してまして、
そのサイトからPHPのmb_send_mail()関数を使ってメール送信したいです。
ただ、何も設定しないで送信すると迷惑メールになる可能性があります。
迷惑メールになる原因として、
メールの中身や添付ファイルが怪しいと、受信側のメーラー側に判断されたら仕方ないですが、
メーラー側から「メール送信元アドレス偽装」と判断されることが原因で迷惑メールにされることを避けたいです。
やり方
XSERVERのphp.iniを設定します。
- XSERVERのサーバーパネルから「php.ini設定」画面を開き「php.ini直接編集」タブを選択します
- php.iniの内容を編集します。編集内容は後述します。
- 「確認画面へ進む」を選択します。
- 次画面の「確定する」ボタンも押下して設定を完了させます
php.iniの設定内容は以下のとおりです。
[mail function]
SMTP = localhost
smtp_port = 25
この箇所のsmtp_port を、25から465 (SSLを利用しない場合は 587)に変更します。
SMTP 項目は、「localhost」となっているので、自サーバであるからこのままでいいのかな?それともドメイン指定した方がいいのかな?と迷いましたが、
こちらのサイト様を見ると、ポート番号のみしか編集してないようだったので、とりあえず僕もポート番号だけにしてみます。
動作確認
上記設定する前はGmailでメールを受信した際に「経由」マークがついていました。
「経由」マークは
送信元のドメインと [From] アドレスのドメインが一致しない場合
などに表示されます。
GMailヘルプ
↓
設定後、Gmailでメール受信すると、「経由」マークが外れ、、、てねええええ!
外れてねーじゃねーか!
。。。。
め、メッセージのソースを確認してみます。
こちらは、特に問題なさそうでした。(確認項目)
↓
smtp_port を、「465」ではなく、「587」(SSLを伴わない場合)で設定してみます。
↓
結果変わらずでした。
↓
php.iniの設定で、SMTPを変更してみます。
変更前:
[mail function]
SMTP = localhost
変更後:
[mail function]
SMTP = XSERVERのメールサーバのアドレス(GMailだと、「経由」の左隣に載ってるアドレスになります)
↓
うーん、「経由」表示、外れませんでした。
↓
受信先をYahooメールに変更して再テストしてみます。
php.iniの設定をデフォルトに戻します。
STMP = localhost
smtp_port = 25
その後、以下の2パターンを試します。
- XSERVERからメール送信した場合
- GMailから送信した場合
再度書きますが、受信側は、Yahooメールです。
- XSERVERからメール送信した場合の結果:
- 迷惑メールになりませんでした。
- GMailから送信した場合の結果:
- 迷惑メールの可能性がある となりました
以下のとおりです。
つまり、結論、XSERVERはphp.iniの設定がデフォルトでも大丈夫っぽいですね。
断言はできないですが。
GMailで受信する場合の「経由」マークを基準にテストする場合の注意点
ちなみにGMailで受信テストする場合の注意点です。
受信したメールに返信したり、アドレス帳に追加するだけでも「経由」マークが外れてしまうそうなので、試す際は返信やアドレス帳追加をしないで試すとよいかと思います。
今回は「経由」マークあんま宛になんねーなー
という感じでしたが。
コメント