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

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

ただいまの
回答率

90.51%

  • Ruby on Rails

    8819questions

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

  • AWS(Amazon Web Services)

    2526questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Railsのdeviseによるメール認証でメールが送られてこない

解決済

回答 1

投稿

  • 評価
  • クリップ 1
  • VIEW 1,344

TakumaN

score 110

現在の状況

・deviseとAmazon SESを使って登録確認メールを送りたい(まずは開発環境で)

・Amazon SES側ではメールアドレスを有効化しており、そのアドレスを使ってメールを送信する。(下記のコードではinfo@sample.comで記載しています)

・Amazon SES側でSMTPのユーザーネームとパスワードを取得済み(下記のconfig/enveropments/deveropment.rb内にある:user_name、:passwordで使用)

・新規登録画面からsubmitボタンをクリックしてもメールは(hoge@gmailに)送られてこず、別タブで開いているrails serverに下記のSent mailログだけが出力される。

・rails serverのログにあるConfirm my accountのリンクをURL欄に入力するとログイン画面に飛んで、そこでアドレスとパスワードを入力すると登録完了になる。

・Vagrantの仮装開発環境で試している

問題点

railsアプリでdeviseによるメール認証をしたいのですが、メールが送られてきません。設定は以下のようにしたのですが、何が問題なのでしょうか?

#rails server時のコンソールログ

Sent mail to hoge@gmail.com (99.5ms)
Date: Fri, 22 Jul 2016 18:39:39 +0900
From: info@sample.com
Reply-To: info@sample.com
To: hoge@gmail.com
Message-ID: <5791e9dbd9f2b_2a2a3fa0453b0ec8780ad@localhost.localdomain.mail>
Subject: Confirmation instructions
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit

<p>Welcome hoge@gmail.com!</p>

<p>You can confirm your account email through the link below:</p>

<p><a href="http://localhost:3000/users/confirmation?confirmation_token=UNmF3FZLU5to4ocyALy1">Confirm my account</a></p>
#ここのリンクを直接URLフォームにコピペすると、ログイン画面に飛ばされ、そこでアドレスとパスワードを入力すると登録完了になる

Redirected to http://localhost:3000/
Completed 302 Found in 820ms (ActiveRecord: 37.2ms)
config/enveropments/deveropment.rb

  config.action_mailer.raise_delivery_errors = false
  config.action_mailer.default_url_options = { :host => 'localhost:3000' }
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :address => 'email-smtp.us-east-2.amazonaws.com',
    :port => 465,
    :authetication => :login,
    :user_name => 'AKxxxxxxxxxxxxxx',
    :domain => "localhost:3000",
    :password => 'Akxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    :ssl => true,
    :tls => true,
    :enable_starttls_auto => true,
  }
config/initializers/devise.rb

  config.mailer_sender = 'info@sample.com'

ご回答宜しくお願いします!!

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

check解決した方法

0

port番号を2587にしたらできました!

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

同じタグがついた質問を見る

  • Ruby on Rails

    8819questions

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

  • AWS(Amazon Web Services)

    2526questions

    Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。