ActionMailer ArgumentError - SMTP-AUTH запрошен, но отсутствует секретная фраза

Я использую Yandex Connect (SMTP) в качестве метода для отправки электронных писем из моего приложения Rails 5 JSON API.

Вот настройки:

Rails.application.configure do
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.raise_delivery_errors = true
  config.action_mailer.smtp_settings = {
    address:              'smtp.yandex.com',
    port:                 25,
    domain:               ENV['MAIL_DOMAIN'],
    user_name:            ENV['MAIL_USER'],
    password:             ENV['MAIL_PASSWORD'],
    authentication:       'plain',
    enable_starttls_auto: true
  }
end

у меня тоже есть config.action_mailer.default_url_options = { host: ENV['MAIL_DOMAIN'] } установить в моем application.rb

На героку с нужными учетными данными работает просто отлично. Но когда я пытаюсь запустить тот же конфиг локально и отправить письмо, я получаю ArgumentError - SMTP-AUTH requested but missing secret phrase,

Что может быть не так

1 ответ

1) Убедитесь, что переменные среды действительно есть, например bundle exec rails console, puts ENV.inspect

2) Убедитесь, что учетные данные верны

3) Перезапустите сервер разработки после изменения среды. Это включает spring stop,

Другие вопросы по тегам