邮件测试通过但无法发送其他邮件

为了提供一些背景信息,我正在 Windows WSL 中运行最新版本的 Discourse,并自托管了一个 Stalwart 邮件服务器。我已经通过 Thunderbird 和其他邮件客户端测试了我的邮件服务,一切都工作正常。

几天前,我创建了一个新的邮件用户,然后让 Discourse 使用它。当我在 Discourse 管理菜单中点击 发送测试邮件 向我所有的邮箱(gmail.comqq.com163.com 等)发送测试邮件时,所有邮箱都收到了测试邮件。但是,当我尝试注册账户时,除了测试邮件之外,我所有的邮箱都无法收到注册邮件和其他消息。在邮件日志中,我除了 test_message 之外看不到任何发送的邮件,在 Stalwart 中,我也看不到除测试邮件之外的其他邮件日志。

我已经卡在这里好几天了,没有其他想法了,所以在这里发帖。

这是我的配置:

SMTP 服务器域名:mail.example.com
SMTP 端口:465
SMTP 强制 TLS:true
SMTP 自动 STARTTLS:true
邮件域名:example.com
邮件用户名:notice@example.com
通知邮箱:notice@example.com

我已经按照这篇文章的操作,在 discourse.conf 中将 notification_email 设置为 notice@example.com,然后尝试运行 rake emails:test[my_email@gmail.com]。好的,我收到了一条测试邮件,但 Discourse 本身仍然没有发送邮件。

我本来期望会有更聪明的人来帮你,但不管怎样……在此期间,你是否尝试过使用如下的 Discourse 管理界面给新用户发送测试邮件?

另外,请检查如下的邮件日志

所有这些都可以通过如下的左侧菜单访问

希望在更好的帮助到来之前,这些能有所帮助。

我已经解决了这个问题。我使用 Puma 来运行 Discourse,但官方的 puma.rb 从未按照 unicorn.conf.rb 进行更新(因此我的 Sidekiq 完全没有运行)。我使用 ChatGPT 进行了一些转换,使其与 Unicorn 的配置对齐,以启动 Sidekiq 和其他关键组件,然后一切恢复正常。

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.