У меня есть приложение Rails на Heroku. У него есть собственный домен, и я попытался настроить отправку электронной почты через Mailgun. Я установил Mailgun в качестве дополнения через Heroku, и я прошел через шаги, которые Mailgun дает для проверки своего пользовательского домена. Если я запустил Mailgun «Check DNS Records Now», все возвращается в зеленый цвет, а статус «Активный». Я даже могу отправлять сообщения из своего пользовательского домена с помощью вызова curl
, который они предоставляют. Однако, когда я пытаюсь отправить электронное письмо из моего приложения Rails, используя ActionMailer
, я получаю: Net::SMTPFatalError (554 Sandbox subdomains are for test purposes only. Please add your own domain or add the address to authorized recipients in domain settings.
Проверенное письмо не отправлено через Heroku/Mailgun
Почему он думает, что я использую «субдомен для песочницы»? Вот что я имею в environments/production.rb
:
# Mailgun
ActionMailer::Base.smtp_settings = {
port: ENV['MAILGUN_SMTP_PORT'],
address: ENV['MAILGUN_SMTP_SERVER'],
user_name: ENV['MAILGUN_SMTP_LOGIN'],
password: ENV['MAILGUN_SMTP_PASSWORD'],
domain: 'my-custom-domain.com',
authentication: :plain,
}
ActionMailer::Base.delivery_method = :smtp
# Devise recoverable
config.action_mailer.default_url_options = { host: 'my-custom-domain.com' }
Для разработки я использую Gmail, так что я знаю, что это читает правильный конфигурационный файл. И все env vars установлены правильно. Правильно ли это правильно, я вижу это мои журналы ([email protected]) Что я пропустил? Активен ли что-то, что еще может распространяться даже через статус?
Спасибо!
Вы добавили получателей своего сообщения в список «Авторизованные получатели»? – Brian
У меня была одна и та же проблема - я сделал то, что вы упомянули ниже, изменил героев env vars, чтобы указать на новые учетные данные, но почта еще не отправляется. Как ни странно, цепочка «повторного подтверждения подтверждения» работает нормально. Любая идея, как это исправить? – Anand