herokuでGmailをSMTPとして使う場合の注意
GmailをSMTPとして使ってメール送信していると、
そのうち、メールが送れなくなる。
Gmailを見ると「不正なログインをブロックしました」というメールが届いている。
アクセス元はamazonaws
herokuはEC2上で動いているので、AWSからアクセスがあると認識されます。
これを解除するには、Gmailを一度、ログアウトして再ログインすると
不正メールの確認ポップアップが表示されます。
後はナビゲーションに従い、次へ進んでいき、
10分以内に再度、アクセスが成功したアクセス元については
今後のアクセスを許可します、という状態になるので、
急いでherokuからメールを再送信。
これでエラーがなくなります。
注意
herokuは使っているとIPアドレスが変わることがあります。
その場合、上記のエラーが再発するので、再度、同じ操作をする必要があります。
以下のページで説明のあるheroku addonのSendGridを使った方がいいかもしれない。
HerokuのRailsアプリからメールを送信するには? - QA@IT