PHP:mail()/mb_send_mail()で、サーバーから451が返された
お客さんからメールが送れなくなったと連絡があったので、調査にいった。
環境調査
最初は設定の問題かと思って調べていたが、問題なし。
telnetでSMTPサーバーに接続して、コマンドで送信の手順をおこなって問題なし。
プログラム調査
プログラムを調べても、Could not instantiate mail function.がエラーとして取得できるだけ。
mb_send_mail()を試してみたら、SMTPサーバーから451が返された。
プログラムは、PHPMailerを呼び出していたので、ソースコードを読んでいくと、mail()を呼び出していた。
mail()のエラーが出力されるようにすると、mb_send_mail()と同じ451が返されていた。
今後の進め方
SMTPサーバーの管理者の方にログを調べて貰って、SMTPプロトコルのどこでエラーが発生しているか調べて貰う。
気になるところ
アンチウィルスソフトが影響していないのか?
==>世界でトラブルが発生して、既に対策が取られていると思われるので、多分関係ない。
改行コードが影響している?
==>mb_send_mail()でSMTP server response 451のエラーが出るを読んで気になってきた。関係あるかも。