Redmine 通知电子邮件未发送

Redmine 通知电子邮件未发送

我正在尝试让 Redmine 发送通知电子邮件,但似乎无法正常工作。我正在遵循Redmine 网站上的电子邮件配置说明,但似乎没有任何效果。

我的configuration.yml配置是:

default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      enable_starttls_auto: true
      address: "smtp-relay.gmail.com"
      port: 587
      domain: "smtp-relay.gmail.com"
      authentication: :plain
      user_name: "[email protected]" # this is a G Suite account 
      password: "password"

请注意,我按照 Redmine 文档中的说明启用了 SMTP 中继。我还在我的 Google 帐户中启用了安全性较低的应用程序。

我试过了:

  1. 将“默认”替换为“生产”
  2. 将“smtp-relay.gmail.com”替换为“smtp.gmail.com”
  3. 在不同的域下使用完全不同的 G Suite 帐户。
  4. 使用我知道有效的 Office 365 帐户的 SMTP 设置,因为我在 Gmail 中使用它们。

每次,当我从 Redmine 界面发送测试电子邮件时,我都会收到:

An error occurred while sending mail (execution expired)

以下是 Redmine 信息:

Environment:
  Redmine version                4.1.1.stable
  Ruby version                   2.6.6-p146 (2020-03-31) [x86_64-linux]
  Rails version                  5.2.4.2
  Environment                    production
  Database adapter               Mysql2
  Mailer queue                   ActiveJob::QueueAdapters::AsyncAdapter
  Mailer delivery                smtp
SCM:
  Git                            2.25.1
  Filesystem                     
Redmine plugins:
  no plugin installed

我在 Linode 上运行 Ubuntu 20.04.1 LTS(GNU/Linux 5.4.0-48-generic x86_64)。

谢谢!

答案1

您可以尝试连接到 smtp.gmail.com(根据配置指南,在 smtp 和域字段中使用此服务器)- 您还可以尝试在域字段中使用您的域,因为这可能是 SMTP 事务中 EHLO 命令的用途。连接前,请确保启用了安全性较低的应用,并通过单击解锁对帐户的访问权限https://accounts.google.com/unlockcaptcha (点击链接后等待 1 分钟)。如果连接仍然失败,您应该会在 Gmail 收件箱中收到登录尝试警报。您能确认吗?如果您没有收到此通知,则表示 redmine 服务存在连接问题。

SMTP 中继服务 (smtp-relay.gmail.com) 更为复杂,您不仅需要添加用户名和密码,还需要在管理控制台中配置服务并将服务/应用程序 IP 地址列入白名单。另外,请确保您已选择正确的选项,以便仅对注册用户或域内的任何地址进行身份验证。

相关内容