微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SES SDK Rails6 未选择区域

如何解决SES SDK Rails6 未选择区域

更新:

我打开了

  config.action_mailer.raise_delivery_errors = true

这导致报告了有关正在使用的区域的错误 - 这不是我配置的区域。

The following identities Failed the check in region US-EAST-1

然而,低于我配置的 AWS_REGION 是 ap-southeast-2(它应该对 SES 有效)。

--

我已将 rails6 应用程序设置为通过 SES 发送电子邮件,但是当我发送电子邮件时,我的日志报告它已发送,但未在收件人:地址处收到,也未报告任何错误。该电子邮件也不会出现在控制台统计信息中。

Delivered mail 601bc524e9f9b_1cec3ff815e2bdf812430@MarksWokMacBook.mail (1334.3ms)

我已授权/验证我的域和电子邮件地址,并成功发送了一封在 AWS 控制台中编写的测试电子邮件

我已经使用 figaro 设置了我的环境变量并使用初始化程序加载:

Rails.application.reloader.to_prepare do
    ActionMailer::Base.add_delivery_method :ses,AWS::SES::Base,access_key_id: ENV['AMAZON_ACCESS_ID'],secret_access_key: ENV['AMAZON_SECRET_KEY'],region: ENV['AWS_REGION']
end

我所在的地区是 ap-southeast-2,支持 SES。

我刚刚更新了 gem,但问题仍然存在:

gem 'aws-ses','~> 0.7.1',require: 'aws/ses'

因此,在没有错误消息且控制台中没有任何可见内容的情况下,我不知道接下来要尝试什么...

提前致谢。

解决方法

好的,进步了:

我根据 SDK 文档添加了此配置:

server: "email." + ENV['AWS_REGION'] + ".amazonaws.com",message_id_domain: ENV['AWS_REGION'] + ".amazonses.com"

但是我随后收到了凭据错误。

在此之后,我感到非常沮丧,我只是将 SES 恢复为使用 SES 的默认区域 us-east-1,并删除了其他配置参数,现在它可以正常工作了。

所以我很不高兴我必须使用与其他所有区域不同的区域,但现在至少我可以发送电子邮件了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。