Сендгрид на Heroku Ошибка - PullRequest
2 голосов
/ 09 февраля 2012

У меня настроен Sendgrid для моей учетной записи Heroku, но в журналах указывается следующая проблема при попытке приложения отправить почту:

Net :: SMTPFatalError (550 Не удается получить с указанного адреса <[theадрес электронной почты, указанный в devise.rb с помощью config.mailer_sender]>: отправители, не прошедшие проверку подлинности, не допускаются

Мои настройки production.rb:

  config.action_mailer.delivery_method = :smtp
  config.action_mailer.raise_delivery_errors = true
  config.action_mailer.perform_deliveries = true
  config.action_mailer.default_url_options = { :host => 'heroku.com' }

  config.action_mailer.smtp_settings = {
    address: "smtp.sendgrid.net",
    port: 587,
    authentication: "plain",
    user_name: ENV["my sendgrid username"],
    password: ENV["my sendgrid password"],
    domain: 'heroku.com'
  }

Мой пароль / имя пользователя в Sendgridполученный от Heroku с использованием heroku config -long

Кто-нибудь есть какие-либо предложения относительно того, где может быть проблема? Как я могу предоставить адрес электронной почты, который я определил в config.mailer_sender аутентификации?

1 Ответ

8 голосов
/ 09 февраля 2012

Ваши имя пользователя и пароль должны быть именами ключей, а не значениями:

config.action_mailer.smtp_settings = {
    address: "smtp.sendgrid.net",
    port: 587,
    authentication: "plain",
    user_name: ENV["SENDGRID_USERNAME"],
    password: ENV["SENDGRID_PASSWORD"],
    domain: 'heroku.com'
  }

Идея состоит в том, что вы храните конфигурацию отдельно от своего кода .

...