概要
SMTPにgmailを使って、メール送信をする
詰まった点
https://qiita.com/sutara79/items/0ea48847f5565aacceea
上記の記事を参考にメール送信を実装しようとしたところ、いくら頑張っても送信できず。
エラー文
Swift_TransportException with message 'Expected response code 250 but got code "530", with message "530 5.7.1 Authentication required
解決するには
- .envの記述を100回くらい確認する
- .envの記述が本当に間違いがないか5回くらい確認する
- .envの記述の間違いに気づく
- Googleアカウントの二段階認証を有効化する(おまけ)
.env
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=hogehoge@gmail.com
MAIL_PASSWORD=gehogeho
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=hogehoge@gmail.com
MAIL_FROM_NAME=hoge
という記述の上に、同じような記述があると、上にある記述のほうが優先して読み込まれます。
いくらMAIL_USERNAMEを変えて、
view
dd(\Config::get('mail'));
echo \Config::get('mail.username');
こんなことしても、
terminal
$ php artisan config:cache
キャッシュをクリアしても、、
.envの記述がおかしかったら治りません
Googleの二段階認証も忘れずに
あと、Googleの二段階認証もしていないと、そもそも
https://security.google.com/settings/security/apppasswords
ここで詰まります。
(他のサイトは認証設定してたのに、Googleだけしたつもりになってました、、、危ない)