前提・実現したいこと
Railsアプリケーションにてメール送信機能を実装したいです。
SMTPサーバーにGmailを採用し、その実装中に以下のエラーメッセージが発生しました。
環境は以下の通りです。
- rails : 5.1.4
- ruby : 2.5.0
- mysql
- puma
使用しているGemは以下の通りです。
- devise
- config
一応最初の方はメール送信ができていたのですが、途中からできなくなってしまい、困惑しております。
gitでのバージョン管理はしており、メール送信ができていたタイミングまで戻ってみても駄目でした。
発生している問題・エラーメッセージ
Completed 401 Unauthorized in 870ms (ActiveRecord: 9.6ms) Net::SMTPFatalError (550 Unauthenticated senders not allowed ): /Users/xxx/.rbenv/versions/2.5.0/lib/ruby/2.5.0/net/smtp.rb:969:in `check_response' /Users/xxx/.rbenv/versions/2.5.0/lib/ruby/2.5.0/net/smtp.rb:937:in `getok' /Users/xxx/.rbenv/versions/2.5.0/lib/ruby/2.5.0/net/smtp.rb:837:in `mailfrom' /Users/xxx/.rbenv/versions/2.5.0/lib/ruby/2.5.0/net/smtp.rb:658:in `send_message' mail (2.7.0) lib/mail/network/delivery_methods/smtp_connection.rb:54:in `deliver!' mail (2.7.0) lib/mail/network/delivery_methods/smtp.rb:101:in `block in deliver!' /Users/xxx/.rbenv/versions/2.5.0/lib/ruby/2.5.0/net/smtp.rb:519:in `start' mail (2.7.0) lib/mail/network/delivery_methods/smtp.rb:109:in `start_smtp_session' mail (2.7.0) lib/mail/network/delivery_methods/smtp.rb:100:in `deliver!' mail (2.7.0) lib/mail/message.rb:2160:in `do_delivery' mail (2.7.0) lib/mail/message.rb:260:in `block in deliver' actionmailer (5.1.4) lib/action_mailer/base.rb:558:in `block in deliver_mail' activesupport (5.1.4) lib/active_support/notifications.rb:166:in `block in instrument' activesupport (5.1.4) lib/active_support/notifications/instrumenter.rb:21:in `instrument' activesupport (5.1.4) lib/active_support/notifications.rb:166:in `instrument' actionmailer (5.1.4) lib/action_mailer/base.rb:556:in `deliver_mail' mail (2.7.0) lib/mail/message.rb:260:in `deliver' actionmailer (5.1.4) lib/action_mailer/message_delivery.rb:96:in `block in deliver_now' actionmailer (5.1.4) lib/action_mailer/rescuable.rb:15:in `handle_exceptions' actionmailer (5.1.4) lib/action_mailer/message_delivery.rb:95:in `deliver_now' devise (4.4.1) lib/devise/models/authenticatable.rb:193:in `send_devise_notification' devise (4.4.1) lib/devise/models/confirmable.rb:121:in `send_confirmation_instructions' devise (4.4.1) lib/devise/models/confirmable.rb:183:in `send_on_create_confirmation_instructions' . . .
該当のソースコード
development.rb
ruby
1config.action_mailer.raise_delivery_errors = true 2config.action_mailer.perform_caching = false 3config.action_mailer.perform_deliveries = true 4config.action_mailer.delivery_method = :smtp 5user_name = Settings.gmail[:user_name] 6password = Settings.gmail[:password] 7config.action_mailer.smtp_settings = { 8 :address => "smtp.gmail.com", 9 :domain => "smtp.gmail.com", 10 :port => 587, 11 :user_name => user_name, 12 :password => password, 13 :authentication => 'login', 14 :enable_starttls_auto => true 15} 16 17 18
試したこと
以下のサイトを参考にしました。
- [Railsでメール自動配信機能をつくるまでの道程
](https://qiita.com/Yama-to/items/823baf26bba3193712ea)
- RailsのActionMailerでGmailを使ったらNet::SMTPAuthenticationErrorが出た
- Railsでgmailでメールを送ろうとしたけどsmtp認証のエラーが出て詰まった時の解決方法
2段階認証のオンオフ、安全性の低いアプリへのアクセスのオンオフなどそれぞれ試しましたが駄目でした。
よろしくお願いいたします。
あなたの回答
tips
プレビュー