【さくらのVPS】mb_send_mail でメールが送れない

php の mb_send_mail 関数で一部のメールが送れない。
yahoo メール宛てには送れるのに、独自メールが送れない。

————————————————–
環境
送信元:さくらのVPS WEBサーバーより mb_send_mail を利用
————————————————–

mb_send_mail 関数自体はエラーを吐かず、正常に終了する。

ターミナルでメールエラーを確認
————————————————–
cd /var/log/maillog
————————————————–

エラーっぽい箇所の抜粋
————————————————–
May 29 12:14:51 localhost postfix/smtp[32237]: 70ED82C028C: to=, relay=○○.sakura.ne.jp[49.212.235.97]:25, delay=0.08, delays=0.02/0/0.04/0.02, dsn=5.1.8, status=bounced (host ○○.sakura.ne.jp[49.212.235.97] said: 553 5.1.8 … Domain of sender address apache@localhost.localdomain does not exist (in reply to MAIL FROM command))
————————————————–

検索して見つけた対処法
設定してなかった mb_send_mail 第五引数に “-fプロバイダメールアドレス” を指定。
第五引数はエラーがあった場合にメールを送信するメールアドレス。
これで送信できるようになった。

ちなみに別で契約しているもう一つのさくらVPSでは 第五引数がなくても送信できている。サーバーの設定を変えることでも問題解決できそうだ。

参考
https://okwave.jp/qa/q4822148.html
https://b-risk.jp/blog/2013/01/php_mb_send_mail/

追記
ezweb を使っている方から仮登録メールが届かないという連絡が問い合わせフォームからあった。

SPF の設定が何のが原因か?

—————————————-
“v=spf1 +ip4:web公開サーバーのipアドレス +mx ~all”
—————————————-

参考
https://qiita.com/ryounagaoka/items/931081c74b5c7a9b2bff

spfの確認
http://mxtoolbox.com/spf.aspx

追記2
gmail 宛てに送ったら迷惑メールに振り分けられたら

gmail から メールヘッダーを確認。

Received-SPF の部分が softfail になっていたらそれが原因。
ip6 対応のサーバーから送信した場合、SPF の設定に ip6 を追加する必要がある。

参考
https://www.nalabo.net/blog/2013/06/18/148

タイトルとURLをコピーしました