多站点安装中未收到管理员激活邮件

在使用 Discourse 论坛成功运行约两年后,我决定再添加一个站点作为多站点部署。

我一直在测试服务器上测试此功能,以便随意尝试,而不会影响生产环境(配置设置完全相同)。安装过程顺利,没有遇到大问题(我遵循了多站点配置指南)。我查阅了 Meta Discourse 上的各种主题,看看是否有人遇到过类似问题以及他们是如何解决的。

我使用 SSO 为生产环境(以及测试服务器)的用户进行登录。用户在我的网站上登录后,当他们希望访问 Discourse 时,页面会通过 SSO 等方式进行重定向。第二个站点的情况也类似(它将使用不同的域名,但这应该不会成为问题)。

这里出现的问题是:我无法收到第二个站点的管理员激活邮件(我已将管理员邮箱地址填入 app.yml)。我已确认邮件确实已发送(即 SMTP 凭据正确有效)。我使用了第一个 Discourse 站点的测试功能,邮件正常收到。

我已确保使用的是最新版本的 Discourse 和 Docker。

有人能帮我解决这个问题,或指引我查阅其他文档或主题以解决此问题吗?我尝试阅读 Discourse 提供的日志,但其中内容繁多,如果您能提供一些提示,告诉我需要关注哪些部分,我将不胜感激。

非常感谢。

如果你使用的是单点登录(SSO),那么我认为它不会发送激活邮件。

你可以使用以下命令在第二个站点上设置管理员:

 RAILS_DB=secondsitename rake admin:create

明白了,那我试试这个方法。我之前因为觉得这个方法有点取巧而想避免使用,但如果这是唯一可行的方式,那也只能这样了 :slight_smile: 谢谢你仔细阅读我的问题。

等我设置好之后会再向你反馈。

我已经完成了,现在可以正常工作了。两个页面都已上线运行。感谢您的帮助。

太好了,这起作用了!虽然看起来有点取巧,但一旦涉及单点登录(SSO),确实会陷入“先有鸡还是先有蛋”的困境。另外,如果你将配置设置在环境变量中,这些设置会适用于所有主机。

是否有已使用或可覆盖的环境变量列表?我不确定自己是否设置过任何变量(我假设某些变量是在首次安装时设置的)。

现在您可以通过环境变量覆盖所有站点设置。我认为某些设置可能需要重新构建才能生效。