LaravelでSMTP認証(SMTP-AUTH)メール送信エラーの対応方法

■はじめに

レンタルサーバーのSMTP認証(SMTP-AUTH)のメール送信をすると
Swift_TransportException: Expected response code 220 but got code “500”, with message “500 Unknown Command: “STARTTLS”
が発生して、メール送信が出来なかった。

 

いくら調べてもGmailの設定例ばかりでその通りにやってもダメ

 

とりあえず、SMTPSでは送信出来ることは確認した。
そりゃ、認証してないんだから出来て当たり前と思いつつモヤモヤしていたので
色々調べていたら解決できたので備忘録として残しておきます。

■環境情報

Laravel 5.5
PHP 7.1

■LaravelでSMTP認証メール(SMTP-AUTH)送信エラーの対応方法

.envに下記を設定

動作確認したレンタルサーバー:xserver(エックスサーバー)、heteml(ヘテムル)

 

ポート587のMAIL_ENCRYPTIONはtlsとどこ見てもそう紹介していたけど
MAIL_ENCRYPTION=に何も設定しないが正解でした。

 

原因が違う方は下記が参考になるかもしれまん。
https://www.ravness.com/2018/07/laravelmail/#.W_zm7ZP7SUk

■LaravelでSMTPSでメール送信

参考までにSMTPSでの送信.env設定例

■終わりに

たったこれだけのことを24時間以上かけて調べてしまったので

この情報が少しでも役立つと嬉しいです