Devise不会在生产中发送邮件

时间:2013-01-04 03:52:42

标签: ruby-on-rails devise actionmailer

我似乎无法在生产中发送确认邮件。日志中没有错误,sendmail工作正常。这是我的生产配置:

config.action_mailer.delivery_method = :sendmail
config.action_mailer.smtp_settings = {  
  :enable_starttls_auto => true,  #this is the important stuff!
  :address => "localhost",
  :port    => 25,
  :domain  => 'beautifulidiot.com',
  :openssl_verify_mode  => 'none',
  :perform_deliveries => true
}  

我尝试将交付方式更改为:smtp,也没有运气。这是Rails 3.2.5。

感谢您的帮助, 凯文

3 个答案:

答案 0 :(得分:1)

  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
      :address              => "smtp.gmail.com",
      :port                 => 587,
      :domain               => 'mail.google.com',
      :user_name            => 'lisabrown472@gmail.com',
      :password             => 'XXXX',
      :authentication       => 'plain',
      :enable_starttls_auto => true  
  }

并根据您的

替换凭据

答案 1 :(得分:0)

试试这个:

config.action_mailer.perform_deliveries = true

并且不要忘记重启服务器

答案 2 :(得分:0)

问题是您将delivery_method设置为:sendmail,但您设置了smtp的设置。要解决您的问题,请执行以下任一操作:

选项1

config.action_mailer.delivery_method = :sendmail
config.action_mailer.send_mail_settings = { ... }

选项2

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = { ... }

看起来您的设置仅适用于:sendmail,因此最好首先尝试选项1。