質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
SendGrid

SendGridは、米SendGrid社のクラウド型メール配信サービス。アカウントを作成するだけですぐに利用することが可能です。さらに到達率向上のための送信ドメイン認証対応や、柔軟性のあるスケーラビリティなど多くの機能を有します。

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Q&A

解決済

2回答

2518閲覧

[Rails5] herokuでdeviseの登録メールが送付されない

take77

総合スコア130

SendGrid

SendGridは、米SendGrid社のクラウド型メール配信サービス。アカウントを作成するだけですぐに利用することが可能です。さらに到達率向上のための送信ドメイン認証対応や、柔軟性のあるスケーラビリティなど多くの機能を有します。

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Devise

Deviseとは、Ruby-on-Railsの認証機能を追加するプラグインです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

0グッド

0クリップ

投稿2019/04/26 01:39

実現したいこと

 現在、Rails5で作ったアプリケーションをherokuを使ってデプロイしようとしています。デプロイ自体はうまくいったのですが、deviseのメール認証機能を本番環境で使うことができません
今回はherokuにsendgridのアドオンを追加して確認メールが送信される仕組みの構築を目指しています。ただ、sendgrid上では送信された事になっているメールが実際には届いていないという状況です。
こちらの記事を参考に実装を行っていますが、二進も三進も行かなくなっております。皆様のお力添えをいただきたく、お願い申し上げます。

発生している問題・エラーメッセージ

 今回の問題の非常に厄介な点として、エラーメッセージが出ていないことが挙げられます。メール認証に関連するheroku logs は以下のようになっています。

I, [2019-04-25T03:26:25.076639 #4] INFO -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Rendering users/mailer/confirmation_instructions.html.erb 2019-04-25T03:26:25.078345+00:00 app[web.1]: I, [2019-04-25T03:26:25.078265 #4] INFO -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Rendered users/mailer/confirmation_instructions.html.erb (1.4ms) 2019-04-25T03:26:25.079286+00:00 app[web.1]: D, [2019-04-25T03:26:25.079208 #4] DEBUG -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Users::Mailer#confirmation_instructions: processed outbound mail in 135.0ms 2019-04-25T03:26:26.175897+00:00 heroku[router]: at=info method=POST path="/users" host=researchable-ig.herokuapp.com request_id=d7ba11ba-a72c-4562-91f8-8bb5c7fa5554 fwd="133.9.37.26" dyno=web.1 connect=0ms service=1720ms status=302 bytes=1168 protocol=https 2019-04-25T03:26:26.135564+00:00 app[web.1]: I, [2019-04-25T03:26:26.135436 #4] INFO -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Sent mail to take77.rails.test@gmail.com (1052.0ms) 2019-04-25T03:26:26.135776+00:00 app[web.1]: D, [2019-04-25T03:26:26.135642 #4] DEBUG -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Date: Thu, 25 Apr 2019 03:26:25 +0000 2019-04-25T03:26:26.135779+00:00 app[web.1]: From: researchable-ig <service@example.com> 2019-04-25T03:26:26.135781+00:00 app[web.1]: Reply-To: researchable-ig <service@example.com> 2019-04-25T03:26:26.135783+00:00 app[web.1]: To: hogehoge@gmail.com 2019-04-25T03:26:26.135785+00:00 app[web.1]: Message-ID: <5cc128e113df7_42b1a1727312893317@ed6effa3-c5d6-42bb-ae18-03e086aeb284.mail> 2019-04-25T03:26:26.135786+00:00 app[web.1]: Subject: Confirmation instructions 2019-04-25T03:26:26.135789+00:00 app[web.1]: Mime-Version: 1.0 2019-04-25T03:26:26.135790+00:00 app[web.1]: Content-Type: text/html; 2019-04-25T03:26:26.135792+00:00 app[web.1]: charset=UTF-8 2019-04-25T03:26:26.135794+00:00 app[web.1]: Content-Transfer-Encoding: base64 2019-04-25T03:26:26.135796+00:00 app[web.1]: 2019-04-25T03:26:26.135797+00:00 app[web.1]: PHA+44GT44KT44Gr44Gh44Gv44K/44Kx44OAIOODnuOCteOCq+OCuuOBleOC 2019-04-25T03:26:26.135799+00:00 app[web.1]: kyE8L3A+DQoNCjxwPuS4i+OBruODquODs+OCr+OBi+OCieODpuODvOOCtuOD 2019-04-25T03:26:26.135801+00:00 app[web.1]: vOOCkuiqjeiovOOBmeOCi+OBk+OBqOOBjOOBp+OBjeOBvuOBmeOAgjwvcD4N 2019-04-25T03:26:26.135803+00:00 app[web.1]: Cg0KPHA+PGEgaHJlZj0iaHR0cHM6Ly9yZXNlYXJjaGFibGUtaWcuaGVyb2t1 2019-04-25T03:26:26.135804+00:00 app[web.1]: YXBwLmNvbS91c2Vycy9jb25maXJtYXRpb24/Y29uZmlybWF0aW9uX3Rva2Vu 2019-04-25T03:26:26.135806+00:00 app[web.1]: PUszM1U1a1pGcVFkdER6cFNyOUR4Ij5Db25maXJtIG15IGFjY291bnQ8L2E+ 2019-04-25T03:26:26.135808+00:00 app[web.1]: PC9wPg0K 2019-04-25T03:26:26.135810+00:00 app[web.1]: 2019-04-25T03:26:26.169916+00:00 app[web.1]: I, [2019-04-25T03:26:26.169794 #4] INFO -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Redirected to https://researchable-ig.herokuapp.com/thanks 2019-04-25T03:26:26.170552+00:00 app[web.1]: I, [2019-04-25T03:26:26.170259 #4] INFO -- : [d7ba11ba-a72c-4562-91f8-8bb5c7fa5554] Completed 302 Found in 1707ms (ActiveRecord: 21.2ms) 2019-04-25T03:26:26.353162+00:00 app[web.1]: I, [2019-04-25T03:26:26.353041 #4] INFO -- : [4e9a1ceb-771d-4d5d-81af-99ef89b24924] Started GET "/thanks" for 133.9.37.26 at 2019-04-25 03:26:26 +0000

該当のソースコード

今回、新たに記述した部分は以下の通りです。

production

1 config.active_record.dump_schema_after_migration = false 2 3 config.action_mailer.default_url_options = {host: 'https://researchable-ig.herokuapp.com' } 4 config.action_mailer.raise_delivery_errors = false 5 config.action_mailer.delivery_method = :smtp 6 config.action_mailer.smtp_settings = { 7 :user_name => "user_name", 8 :password => "password", 9 :domain => "heroku.com", 10 :address => "smtp.sendgrid.net", 11 :port => 587, 12 :authentication => :plain, 13 :enable_starttls_auto => true 14 }

devise

1config.mailer_sender = '"researchable-ig" <service@example.com>'

試したこと

・sendgridのActivity Feedの確認
→メールの送信に関するリクエストはされているようでした。
・送信先メールアドレス変更
→全く効果がありませんでした。
・config.mailer_senderの複数通りの書き直し
→こちらも効果はありませんでした。

補足情報(FW/ツールのバージョンなど)

そこまでの影響はないと思いますが、念のため、バージョンを記載させていただきます。

Rails:5.2.2
ruby:5.3

また、閲覧したサイトは以下の通りです。
https://qiita.com/wtb114/items/176c19bd9caff0893d7c
http://smot93516.hatenablog.jp/entry/2018/10/23/144018
http://hyperneetprogrammer.hatenablog.com/entry/2016/03/01/080000

まだまだ未熟者ですが、是非ともご指導をお願いしたく思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2019/04/26 02:16 編集

> sendgrid上では送信された事になっているメールが実際には届いていないという状況です。 送信先ドメイン(受信者)のメールサーバーのログを確認することは可能でしょうか?
take77

2019/04/26 02:22

早速のコメント、ありがとうございます。 受信者のメールにはgmailを使っておりますが、gmailのログの確認に関する情報が見つかりませんでした…。 ログの表示方法に関して情報があればお教えいただきたく思います。 何卒よろしくお願いいたします
CHERRY

2019/04/26 02:26

example.com となっていたので、独自ドメインかと思ったのですが、gmailですか... gmail だとログの確認はできないですね。迷惑メールとして届いていたりしていないでしょうか?
take77

2019/04/26 02:32

ありがとうございます。 > example.com となっていた これに関しては、ダメ元で記載を記事の通りに変更したものが残っていた形だと思います。 迷惑メールフォルダの確認などもしてみましたが、迷惑メールには分類されていないようです…。
guest

回答2

0

自己解決

またもや自己解決です…。
sendgridのページを確認していたら、アカウントが凍結されていたことがわかりました…。

sendgridに問い合わせ(英語)を入れると謝罪の返信とともにアカウントの凍結が解除され、メールが送れるようになりました!

もしメールが送れない問題に遭遇した時は、アカウントの状態について確認してみるといいかもしれません!

投稿2019/04/28 15:24

take77

総合スコア130

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

SendGridとかのアドオンをHerokuで使わないとできなかったと思います。

投稿2019/04/26 02:38

odyu

総合スコア548

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

take77

2019/04/26 02:44

回答ありがとうございます。 https://qiita.com/wtb114/items/176c19bd9caff0893d7c 上記の記事を参考にaddonの追加は完了しており、herokuのサイト上からの確認もできています…。 ですので、その先の部分に関して情報をいただけますと幸いです。 何卒よろしくお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問