Я установил приложение рельсов во внутренней сети компании.Я использую Devise::Mailer
для подтверждения регистрации, восстановления пароля и т. Д. У меня также есть свой собственный класс почтовых программ, полученный из ActionMailer::Base
.В среде разработки оба типа почтовых программ работают нормально, но в производственной среде, похоже, работает только мой пользовательский почтовый.
В обеих средах конфигурация почты одинакова:
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default_url_options = { host: 'my.internal.ip.address', port: 80 }
config.action_mailer.asset_host = "http://my.internal.ip.address"
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.smtp_settings = {
:address => 'internal.mail.server',
:port => 25,
:domain => 'domain.name'
}
ЭтоSMTP-сервер не требует аутентификации.
В config/initializers/devise.rb
я установил адрес отправителя следующим образом:
config.mailer_sender = "myaddress@domain.name"
Я попытался установить config.action_mailer.delivery_method
в :file
впроизводственная среда.В этом случае письма, отправленные с моего настраиваемого почтовика, записываются в файлы, но письма, отправленные с почтового устройства Devise, не являются.
Как я могу заставить почтовый почтовый ящик работать в производственной среде?
Обновление
Я скопировал файл config/environments/production.rb
в config/environments/development.rb
, и он все еще работает в режиме разработки, но все еще не в рабочем режиме.