站点用户列表“未找到结果”

继续讨论来自 为什么用户列表保持为空? 的话题:

在寻找有关排查此问题的建议时遇到了困难。我的用户列表(例如 https://meta.discourse.org/u)对于所有时间组均为空,并且每条都显示“未找到结果”。

image

上述主题中的最后一条帖子曾提到,当时可能存在解决此问题的方案,但该支持主题似乎已被删除……

有人知道该检查哪里吗?

这是否发生在由我们托管的网站上?如果是,请向我们发送私信,我们将检查具体情况。

建议的解决方案是确保 Sidekiq 正在运行,并等待每日后台作业执行以更新用户列表。用户列表由后台作业每天更新一次。如果用户列表未能按每日一次的频率更新,则说明存在问题,需要进一步排查。

不,这是一个自托管的安装。我确实看到过关于手动触发两个不同的 Sidekiq 任务 Jobs::DirectoryRefreshOlderJobs::DirectoryRefreshDaily 的内容,我执行了这些任务并得到了“OK”的结果,但列表本身并没有任何改善。

当然,这可能已经有一段时间出问题了,我不认为有人一直在使用那个特定网站上的排行榜。

如果大家有关于哪些日志可能提供有用信息的建议,那将很有帮助。看起来似乎不是某个插件导致渲染出现“未找到结果”的错误,但我可能想错了……

另一条小数据。

当我访问 https://discourse.example.org/directory_items.json?period=all&order=days_visited 时,在一个我拥有普通非管理员会员资格的网站上,该 API 请求会为我返回一个很长的用户列表。

而在我的网站上,出现了“未找到结果”的错误(无论是作为未登录的匿名用户,还是作为拥有管理员权限的我本人),API 返回如下:

{
  "errors": [
    "您无权查看所请求的资源。"
  ],
  "error_type": "invalid_access"
}

这个错误是否让任何能帮我找出我的网站配置错误的人感到熟悉?

更新: 好的,我确实在 Discourse 上待得太久了。我忘了有一个站点设置 enable user directory(启用用户目录)很久以前被关闭了。不出所料,将其重新启用并恢复为默认的激活状态后,这个错误就解决了。:laughing: