Files
flarum-ext-reapprove-on-edit/README.md

1.6 KiB
Raw Blame History

Reapprove On Edit

编辑已通过审核的帖子时,自动退回审核队列。

行为

  • 非管理员/版主编辑已过审帖子 → is_approved 设为 null,重新进入审核队列
  • 管理员/版主编辑 → 直接通过,无需审核

已知问题 & 为什么暂停开发

1. 标题不过审,存在绕过漏洞

Flarum 审核机制仅覆盖帖子正文,标题在编辑后直接对外可见,无需审核。恶意用户可在标题中放入钓鱼链接、短网址等,完全绕过审核。

2. 帖子"空壳"体验糟糕

帖子退回审核后,正文被隐藏,但帖子仍存在于讨论列表中。访客点进去看到的是"等待审核"提示,体验非常反直觉——帖子还在,内容凭空消失了。

3. 理想的方案实现成本过高

最理想的体验是:旧内容保持可见,新内容暂存,审核通过后替换。但这需要:

  • 自定义 post_revisions 表存储修订版本
  • 前后端分开渲染旧/新内容
  • 管理员审核 UI 和通知系统
  • 大量对 Flarum 渲染管线的侵入式修改

经过多次测试,确认该方案与 Flarum 架构耦合过深,维护成本远超收益,已无继续开发意义。

建议

直接禁止编辑帖子。

在 Flarum 权限设置中关闭普通用户的编辑权限,仅保留版主/管理员编辑。用户如需修改,删除旧帖重发即可。少一个功能,少一堆漏洞。

状态

开发暂停。 当前版本v1.0.0)可用,但存在上述体验和安全问题,不推荐在生产环境长期使用。

许可证

MIT License. Copyright (c) 2026 MetaLab.