前提
仕様 | バージョン |
---|---|
Rails | 5.02 |
EC2 | |
MySQL(RDS) | |
ELB |
困ってる問題
仕様としては、
ユーザ登録(アドレス) → 確認メール送信 → アカウント有効化
で、ローカルテストはうまくいってると思いますが、本番環境だと、
500 Internal Server Errorが起こる
参考ページと設定
AWSのSESの初期設定は以下を参考に。
RailsでAmazon SES・Route53を用いてドメインメールを送信する
Rails内の設定は以下を参考に。
Amazon SES + aws-sdk-v1でメールをActionMailer経由で送信する。
Rails内の設定を記載しておきます。
Gemfile
gem 'aws-ses', '~> 0.6'
config/initializers/aws.rb
ActionMailer::Base.add_delivery_method :ses, AWS::SES::Base, access_key_id: ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'], server: 'email.us-west-2.amazonaws.com'
config/environments/production.rb
# AWSでメール送信 config.action_mailer.raise_delivery_errors = true config.action_mailer.delivery_method = :ses config.action_mailer.default_url_options = { :host => '{ドメイン}.net' }
追伸1 (現在の状況)
状況 | 詳細 | |
---|---|---|
1 | AWSリミット解除済 | あらゆるメールアドレスに送れるはず |
2 | $ rails c production → TestMailer.test.deliver_now | 送信可能、また受信も確認 |
testメールの内容
class TestMailer < ApplicationMailer def test @greeting = "Hi" mail to: "{送信先メルアド}" end end
追伸2 結局できず、困ってること
Railsチュートリアルに沿って行った
アドレスによる本人確認のメールが送信されず、
システムエラーとなる。
500 Internal Server
システムエラーになってしまいます。
ローカル環境ではメール送信ができていることになっていると思いますが、
本番環境だとうまくいきません。メールのエラーログはどこに記載されるのかも探しています。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/08/21 06:35 編集
2017/08/21 06:38
退会済みユーザー
2017/08/21 06:49 編集
2017/08/21 06:51
2017/08/21 12:14
退会済みユーザー
2017/08/21 12:46