前提
自作のSNSを作成しています。
完成したのでHerokuを利用してデプロイしたのですが、deviseのメール認証機能でメール送信ができません。
開発環境下ではメールを送ることができています。
メールが届かなかったため、もう一度新規登録をしようとすると「Eメールはすでに存在します
」とエラーになります。
実現したいこと
メール認証機能が正常に動くようにしたい。
発生している問題・エラーメッセージ
コマンドプロンプトからheroku logs -tでエラー内容を確認すると以下のように表示されていました。
ActionView::Template::Error (Missing host to link to! Please provide the :host parameter, set default_url_options[:host], or set :only_path to true)
試したこと
environments/development.rbのdefault urlの設定をlocalhost:3000から自分のサイトの名前に変更しました。
environments/development.rb
1 #default url 2 config.action_mailer.default_url_options = { :host => 'MYAPPNAME.herokuapp.com' } 3 #mail setting 4 config.action_mailer.raise_delivery_errors = true 5 config.action_mailer.delivery_method = :smtp 6 config.action_mailer.smtp_settings = { 7 :address => "smtp.gmail.com", 8 :port => 587, 9 :user_name => "GMAIL ADDRESS", 10 :password => "PASSWORD", 11 :authentication => :plain, 12 :enable_starttls_auto => true 13 }
ホストを変更する以外にしなければならないことがあるのでしょうか。
よければご回答よろしくお願いします。
参考にしたサイト
回答2件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
また依頼した内容が修正された場合は、修正依頼を取り消すようにしましょう。