从smtp更改为async_smtp

时间:2015-09-29 13:16:20

标签: redmine

我已设置redmine并使用smtp配置电子邮件发送功能。 如果启用了电子邮件,则完成任何用户操作大约需要15秒(发送电子邮件需要时间在我们的smtp服务器上,因为它有配置的延迟)。

所以我尝试使用async_smtp,如下所示。

production:
    delivery_method: :async_smtp
    async_smtp_settings:
      enable_starttls_auto: true
      address: "smtp.xxx.com"
      port: 25
      domain: "smtp.xx.com"
      authentication: :plain
      user_name: "yyy@xxx.com"
      password: "xxx!"

Redmine显示已发送电子邮件,但我看不到该电子邮件。日志也不会显示任何错误。

有人可以帮忙吗?

在下面添加更多详细信息: 通过上述设置,我获得了成功日志,如下所示:

Sent email "Redmine test" (16ms) to: [email] 
Redirected to http://[ip]/redmine/settings?tab=notifications Completed 302 Found in
328ms (ActiveRecord: 0.0ms) Started GET
"/redmine/settings?tab=notifications" for [ip] at 2015-10-05 15:13:04+0530

注意:我已经用[ip]和[email]

替换了ip和电子邮件

2 个答案:

答案 0 :(得分:1)

我做到了!

我发现您需要在配置文件email_delivery中添加额外级别。它在文件的其他地方暗示,但redmine.org上的所有例子都错过了它。似乎只有async需要它。

production:
  email_delivery:
    delivery_method: :async_smtp
    async_smtp_settings:
        address: ...

答案 1 :(得分:0)

它看起来与我遇到的问题相同,smtp server无法重新路由您的请求。由于我们的smtp服务器无法处理,我必须将配置设置为smtp而不是async_smtp

是你自己的smtp server还是hotmail,gmail等?

BTW您可以尝试将此config.action_mailer.logger = nil添加到config/environments/production.rb配置文件中,并为我们提供log/production.log的输出

编辑:看起来redmine在处理某些SSL证书时遇到问题。