我试图从我的Rails 4应用程序发送Devise电子邮件。我不想更改模板或任何其他内容,我只想使用Mandrill在生产环境中传递消息。在生产中使用Mandrill发送设计电子邮件
我production.rb
是这样的:
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.default_url_options = {:host => 'sociedadeavalia.com.br'}
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "smtp.mandrilapp.com",
:port => 587,
:user_name => ENV['MANDRILL_USERNAME'],
:password => ENV['MANDRILL_APIKEY'],
:authentication => 'login',
:enable_starttls_auto => true,
:domain => 'sociedadeavalia.com.br'
}
我在devise.rb
config.mailer_sender = '[email protected]'
config.mailer = 'MyDeviseMailer'
有这一点,我创建了以下邮件:
class MyDeviseMailer < Devise::Mailer
helper :application
include Devise::Controllers::UrlHelpers
default template_path: 'devise/mailer'
end
现在每当我试图发送生产中的电子邮件(用于创建新用户帐户的确认电子邮件)我的应用程序只是崩溃,这出现在日志中:
31 <190>1 2014-12-03T22:17:07.987969+00:00 app web.1 - - Net::OpenTimeout (execution expired):
我应该怎么做在这种情况下?
它没有在这里工作。该应用程序不断崩溃。 – RBrandao 2014-12-03 23:26:26
也许你有一些IP地址限制b/n你的web服务器和mandrill? – 2014-12-03 23:29:42
我不知道。但我尝试从Mandrill仪表板发送电子邮件到我在应用程序中使用的相同地址,并且它工作正常。在仪表板上工作,但不在应用程序中。 – RBrandao 2014-12-03 23:53:47