#本日の内容
今回の記事のですが、本番環境(EC2)にてGmailを送る実装になります。
開発環境でも参考になると思います!(記述する場所を変えるぐらいなので)
#環境・前提
ruby 2.6.5
本番環境EC2
#◇Gmailメール実装
こちらでは、本番環境にてgmailからユーザーにメールを送っていきます。
###流れ
①Gmailアカウント/アプリパスワード取得
②コードに記述
###Gmailアカウント/アプリパスワード取得
gmailのアカウントのアプリパスワードが必要です。(通常のログインパスワードだとエラーが出ます)
今回は、gmailアカウントの2段階認証をオンにして、アプリパスワードを取得ます。
① 送信用に利用するgmailのアカウントで ログイン
② [セキュリティ]設定
画面左のメニューから[セキュリティ]を選択し、セキュリティの設定画面を開きます。
③ 2段階認証を有効化
[Googleへのログイン]にある[2段階認証プロセス]を選択し、画面に沿って設定を完了させてください。
※既に有効な場合は、手順をスキップしてください
④ アプリで利用するためのパスワードを取得します。
[Googleへのログイン]にある[アプリパスワード]を選択し、パスワードを発行してください。
※上記の後に出てくる、アプリパスワードを生成するアプリとデバイスを選択してください、のアプリ選択は「その他」で大丈夫です。
⑤ パスワード取得完了
発行完了すると、16桁の番号が払い出されます。
この番号をこの後コードに記述します。
###コードに記述
config/environments/product.rb
に下記の記述を行えば完了です!
開発環境の場合は、config/environments/development.rb
に記述すればOKです
config.action_mailer.default_url_options = { host: "Elastic IP アドレス" } #ECの本番アドレス
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:enable_starttls_auto => true,
:address => 'smtp.gmail.com',
:port => '587',
:domain => 'smtp.gmail.com',
:authentication => 'plain',
:user_name => '自身のGmail',
:password => 'アプリパスワード'#先程発行した16桁のパスワードを記述
}
以上になります。