电子邮件无法在rails应用中提供

时间:2015-02-25 08:09:59

标签: ruby-on-rails actionmailer delayed-job

我正在尝试在我的rails应用程序和日志中发送电子邮件,我已经看到了正文

Sent mail to ravendra.kumar@kiwitech.com (97ms)
Date: Wed, 25 Feb 2015 08:13:57 +0000
From: ashish.singla@kiwitech.com
To: ravendra.kumar@kiwitech.com
Message-ID: <54ed84452dcca_71c16217f47382e@web-01-development.mail>
Subject: Ashish Singla is inviting you to read together...
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: quoted-printable

但电子邮件未送达。

1 个答案:

答案 0 :(得分:0)

至少你的邮件程序正在运行。 如果您处于开发模式,请确保将perform_deliveries选项设置为true。

如果没有,请转到config/environments/development.rb文件并写入

config.action_mailer.perform_deliveries = true

如果此设置已设置为true且您没有收到电子邮件,则可能是您的smtp设置未正确设置。您可以使用以下内容在config/application.rb中设置它们:

config.action_mailer.smtp_settings = {
  :address        => 'smtp.office365.com',
  :port           => 587,
  :domain         => 'your-domain.com',
  :user_name      => 'user@your-domain.com',
  :password       => 'somePassword',
  authentication: :login,
  enable_starttls_auto: true
}

在这种情况下,可能启用设置raise_delivery_errors将帮助您诊断问题。您可以在config/environments/development.rb文件中执行此操作并撰写:

config.action_mailer.raise_delivery_errors = true

然后,当电子邮件无法发送时(并且希望)有关问题的描述,您将收到异常。

阅读完评论后:在更改所有这些配置设置后,重新启动delayed_job后端。