不能发送电子邮件usign亚马逊SES从发展环境

时间:2016-03-20 14:39:53

标签: ruby-on-rails ruby-on-rails-4 amazon amazon-ses

我正在尝试将我的mandrilapp配置更改为amazon ses以便从我的rails应用程序发送电子邮件,但是当我尝试测试时,rails没有给出任何错误,但电子邮件从不排队。

我的ses管理控制台有两个经过验证的地址,但我不明白为什么我无法发送电子邮件。

我有以下配置:

config.action_mailer.delivery_method = :aws_sdk

  config.action_mailer.smtp_settings = {
    :address   => "email-smtp.eu-west-1.amazonaws.com",
    :port      => 465,
    :enable_starttls_auto => true,
    :user_name => "blablablausername",
    :password  => "blablablablablablapassword", 
    :authentication => 'login',
    :ssl => true,
    :domain => 'mydomain.es', 
  }

任何想法?

由于

更新

我将代码上传到heroku但是当我注册创建新用户时,我收到以下错误:

  

Aws :: Errors :: MissingCredentialsError(无法签名请求   凭证设置)

但是你可以看到我有我的用户并通过了凭据。

我做错了什么?

由于

1 个答案:

答案 0 :(得分:1)

我使用SES成功发布了一个应用程序,并进行了以下设置。

# Gemfile
gem 'aws-ses', '~> 0.6.0', require: 'aws/ses'

# config/initializers/amazon_ses.rb
ActionMailer::Base.add_delivery_method :ses, AWS::SES::Base,
  access_key_id: Rails.application.secrets.amazon_access_key,
  secret_access_key: Rails.application.secrets.amazon_secret_key,
  server: 'email.us-west-2.amazonaws.com'

# config/environments/development(or production).rb
config.action_mailer.delivery_method = :ses

您还必须设置默认网址选项 - config.action_mailer.default_url_options

GitHub README上提供了更多信息。