我正在尝试将我的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(无法签名请求 凭证设置)
但是你可以看到我有我的用户并通过了凭据。
我做错了什么?
由于
答案 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上提供了更多信息。