Laravel 5.8で問い合わせフォームなどからメールを送信しようと思い、STMPの設定をしたのですがメール送信エラーになってしまいました。
Laravelでメールを送信するための設定は「.env」に記述します。以下、デフォルトの設定項目です。
MAIL_DRIVER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null
今回、xserverのSMTP(SSL)を使ってメールを送信しようと思い、以下のように設定しました。
MAIL_DRIVER=smtp MAIL_HOST=xxxxx.xserver.jp MAIL_PORT=465 MAIL_USERNAME=xxxxx@helog.jp MAIL_PASSWORD=xxxxxxxx MAIL_ENCRYPTION=ssl
メールを送信プログラムを実行すると、以下のエラーメッセージが表示され、メール送信に失敗します。
Expected response code 354 but got code "554", with message "554 5.5.1 Error: no valid recipients "
解決方法として以下のように「送信元メールアドレス」「送信元名」を追加することでメールを送信することができます。
MAIL_DRIVER=smtp MAIL_HOST=xxxxx.xserver.jp MAIL_PORT=465 MAIL_USERNAME=xxxxx@helog.jp MAIL_PASSWORD=xxxxxxxx MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=xxxxx@helog.jp(送信元メールアドレス) MAIL_FROM_NAME=xxxxx(送信元名)
デフォルトに項目「MAIL_FROM_ADDRESS」「MAIL_FROM_NAME」がないため、解決方法に至るまでに時間がかかってしまいました。。
コメントする