Rails 3 ошибка ActionMailer - имя хоста не совпадает с сертификатом сервера - PullRequest
25 голосов
/ 16 февраля 2011

Я настраиваю SMTP для моего приложения Rails 3.

Эта конфигурация работает.

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {  
  :address              => "smtp.gmail.com",  
  :port                 => 587,  
  :domain               => "mydomain.com",  
  :user_name            => "<username>",  
  :password             => "<password>",  
  :authentication       => "plain",  
  :enable_starttls_auto => true  
}

Но эта конфигурация не. Выдает "имя хоста не совпадает с сертификатом сервера"

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {  
  :address              => "some_other_server.com",  
  :port                 => 587,  
  :domain               => "mydomain.com",  
  :user_name            => "<username>",  
  :password             => "<password>",  
  :authentication       => "plain",  
  :enable_starttls_auto => true  
}

Странно, такая же конфигурация работает в Rails 2.3.8. (: tls => true)

Что не так?

Ответы [ 3 ]

53 голосов
/ 01 марта 2011

Попробуйте в настройках smtp для ActionMailer:

:openssl_verify_mode => 'none'

Это дает вам безопасное соединение, но ничего не проверяет.Возможно, это не лучшая идея для производственного приложения, но оно работает для меня.

15 голосов
/ 26 февраля 2011

У меня была точно такая же проблема.Решил это, изменив ActionMailer :: Base.smtp_settings:

:enable_starttls_auto => true  

на

:enable_starttls_auto => false

и должен был убедиться: значение user_name включало @ domain.com

0 голосов
/ 16 февраля 2011

Предоставляете ли вы адрес по умолчанию в почтовой программе (находится в приложении / почтовых программах)?В прошлый раз, когда я вспоминаю о наличии этой проблемы, имя хоста в моей почтовой программе не совпадало с именем хоста в моих настройках SMTP.

...