在Rails应用程序中使用Mandrill发送邮件时出错

时间:2014-06-07 16:51:37

标签: ruby-on-rails actionmailer mandrill

我尝试使用Mandrill向我的应用程序发送邮件时遇到错误。

我发现很多人都有这个问题,我确定这与我的邮件配置有关。看看是否有人知道如何处理这个问题,因为我对此感到绝望。

错误:

Errno::ECONNREFUSED (Connection refused - connect(2)):

production.rb

  # Config default action mailer
  config.action_mailer.default_url_options = { :host => "localhost" }

  config.action_mailer.smtp_settings = {
    :address   => "smtp.mandrillapp.com",
    :port      => 587, 
    :enable_starttls_auto => true,
    :user_name => ENV["MANDRILL_USERNAME"],
    :password  => ENV["MANDRILL_PASSWORD"],
    :authentication => 'login',
    :domain => 'heroku.com'
  }

  # Setup for production - deliveries, no errors raised
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.perform_deliveries = true
  config.action_mailer.default :charset => "utf-8"

1 个答案:

答案 0 :(得分:0)

我们在生产中使用Mandrill:

#config/environments/production.rb
config.action_mailer.smtp_settings = {
    :address        => "smtp.mandrillapp.com",
    :port           => "587",
    :authentication => :plain,
    :user_name      => "username",
    :password       => "API key",
    :enable_starttls_auto => true
}

我们确实没有Heroku的其他选项 - 我认为您应该删除default_url_optionsdomain选项