Actionmailer电子邮件似乎是在控制台和日志中发送但它们永远不会到达

时间:2012-04-10 22:18:09

标签: ruby-on-rails-3 gmail email-integration linode

Rails 3.0.0

以下是我在environment / production.rb中的配置:

  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {  
    :address              => "smtp.gmail.com",  
    :port                 => 587,  
    :domain               => "<domain>",  
    :user_name            => "<un>@gmail.com",  
    :password             => "<pw>",  
    :authentication       => "plain",  
    :enable_starttls_auto => true  
  }

  config.action_mailer.raise_delivery_errors = true

  config.action_mailer.perform_deliveries = true  

我也尝试在不同的Stack Overflow帖子中建议评论域名。

我尝试通过我的应用和控制台发送邮件。在控制台中没有错误,它返回邮件对象但不显示任何其他内容。当我尝试通过应用程序发送时,日志说它呈现了我的用户邮件模板。

我正在Linode上托管我的应用程序,但他们向我保证这种方法“应该”正常工作,并且Linode应该不是问题。我还检查过以确保我的应用程序在“生产”中运行。

有任何想法进行调试吗?我已尝试发送给三个不同的常见电子邮件主机。

编辑:这是我在控制台中发送邮件的代码:

user_mailer.rb

class UserMailer < ActionMailer::Base
  default :from => "myaccount@gmail.com"
  layout 'user_layout' 

  def activation(user)
    @user = user    
    mail(:to => @user.email, :subject => 'Activate your account')  
  end

end

console command

> u = User.last
> u.email
#myotheraccount@gmail.com
> UserMailer.activation(u).deliver

更新2:当我添加仅文本视图模板时,发送正常。因此,发送HTML版本只会出错。我简化了所有HTML模板以包含简单标签和标准doctype html但仍然没有骰子。

0 个答案:

没有答案