我在rails 4生产模式下使用sendgrid收到“ OpenSSL :: SSL :: SSLError(主机名与服务器证书不匹配)”
ActionMailer::Base.smtp_settings = {
:user_name => 'xxxx',
:password => 'xxxx',
:domain => 'moorem.com',
:address => 'smtp.sendgrid.net',
:port => 587,
:authentication => :plain,
:enable_starttls_auto => true
}
the following error getting
OpenSSL::SSL::SSLError (hostname does not match the server certificate):
app/controllers/pages_controller.rb:26:in `contact_create'
最佳答案
该证书的公用名称为*.smtp.sendgrid.net
,主题替代名称(SAN)部分中的*.smtp.sendgrid.net
和smtp.sendgrid.net
。如果仅将其与通用名称进行比较,则将不匹配,而应与SAN进行比较。
所以我想这是一个错误。我不知道您使用的是哪个Ruby版本,但是在最近的版本中,主机名验证对我来说似乎也很好(对于通配符而言,太宽容了),所以我建议您使用较新的Ruby版本进行检查。
关于ruby-on-rails - 使用sendgrid在rails 4中获取“OpenSSL::SSL::SSLError(主机名与服务器证书不匹配)”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24053273/