设计确认电子邮件未到达。我该如何正确配置它?

时间:2011-01-02 18:18:26

标签: ruby-on-rails ruby-on-rails-3 devise sendmail actionmailer

动作邮件程序在development.rb

中配置如下
config.action_mailer.delivery_method       = :sendmail
config.action_mailer.perform_deliveries    = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default_url_options   = { :host => 'localhost:3000' }

根据Rails指南以及我在互联网上找到的所有额外信息,这应该是有用的。当我搜索我的特定问题时,我主要找到了SMTP配置的解决方案。

我错过了什么?

更新

由于某种原因,我的所有电子邮件都已发送到/var/mail/root

2 个答案:

答案 0 :(得分:8)

在您的开发机器上,您是否安装了“sendmail”程序?在命令行上尝试:

which sendmail

如果我是你,我不会在开发模式下发送电子邮件,但如果你想这样做,请注册一个gmail.com帐户并使用它:

config.action_mailer.delivery_method = :smtp

config.action_mailer.smtp_settings = {
  :enable_starttls_auto => true,
  :address => "smtp.gmail.com",
  :port => 587,
  :domain => "gmail.com",
  :authentication => :login,
  :user_name => "<your username>@gmail.com",
  :password => "<your password>",
}

答案 1 :(得分:0)

不能成为使用sendmail的某个域 所以在devise.rb中更改配置

config.mailer_sender = "no-reply@other-domain.com"

检查下面的邮件日志

tail -f /var/log/mail.log 
祝你好运