#1
nekocat
无意中看到了佬的论坛程序,体验了一下整体还不错,但是有几点建议:
-
敏感词检测:如果有成员在帖子里输入了敏感词包含的内容则不允许发布
-
验证码功能:现在只有一个图形验证码,是否可以接入像Cloudflare Turnstile,Google reCAPTCHA这样的人机验证?且可以设置发帖时是否需要进行验证
-
附件上传:可以支持一下7z,rar,zip,tar.gz这些压缩包格式,有些时候需要直接分享点文件资源但是上传不了,还得弄个网盘,怪费劲的,压缩包可以上传到S3或者本地服务器
-
帖子审核:后台好像没有找到这个选项,可以开发一下
-
邀请码注册:适合一些私有小论坛,开启后只有受邀用户可以注册
-
账号封禁:被封禁的用户在用户主页显示封禁状态和封禁原因,且登录后出现相关提示(例:您的账号已被封禁,部分功能将被限制使用,如存在误封请通过xxx@example.com发送邮件申诉),同时增加可选封禁时间(有些人可能情况不严重,临时封禁几天那种)
-
帖子功能:可以设置帖子部分内容或全部内容隐藏(登录后查看/回复后查看),以及在帖子中设置投票,并且可以关闭回复(类似于锁帖)
-
S3配置可视化:把S3的配置从配置文件移动到管理后台,更加方便和理解
-
版权信息展示:开启后自动增加到帖子尾部,用于一些教程类/知识类帖子,比如CC BY、CC BY-SA、CC BY-NC、CC BY-NC-SA、CC BY-ND、CC BY-NC-ND(示例:本帖采用 CC BY-NC-SA 4.0 许可协议发布)
-
搜索功能:移动端现在貌似不会展示搜索按钮,只能通过URL进搜索页面
-
修改密码功能优化:有时候忘记了密码需要重置,但是现在重置又需要输入旧密码,就很尬,可以增加一个使用邮箱验证的方式重置密码作为备选
-
帖子表情:增加一些emoji表情,丰富帖子内容
上面是目前体验到的不足,如果有些做不了就算了,不强求,之前用过Discourse很强,但是唯一的问题就是性能开销太大,这个论坛程序简直是低配服/卡预算站长的福音
#2
abandon1a2b
ok ,都没问题,我后面按照顺序添加吧。
邮箱重制的入口现在只在登录忘记密码增加了。我今天提了一版简易的rank排序,明天我检查一下实现问题,如果没有性能波峰问题的话,你提到的这些后面我依次支持吧。都是一些渐进比较独立的功能,应该可以很快都支持上。
#3
abandon1a2b
回复 @nekocat
敏感词我需要看下是同步阻塞,还是异步处理这个我要考虑一下,不过大概率我会实现异步处理,通知支持检测后可见或者先可见然后检测后如果有问题封禁。
附件的话,我看一下吧,这个我看到应该好几次有人提了,我单独分开处理吧。之前想的是内容主体做额外处理,不过看这个样子还是针对附件单独设计吧,不和投票之类的设计到一起比较合适。
其他的增强功能木问题。
#4
nekocat
回复 @abandon1a2b
#5
nekocat
回复 @abandon1a2b
今天又想到几条,来提一下:
- 浏览器推送:如果用户启用了"浏览器推送"功能,则通过Web Push API提醒用户有新通知
- 历史编辑内容:查看这个帖子或回复的所有历史编辑记录,对差异部分进行高亮显示(参考一下Discourse,只会在有改动的时候显示)
- 登录日志:在安全设置里可以查看账号的登录日志,以便排查最近是否存在异常登录情况
- 注册限制:限制同一个IP当天可以注册几个账号,防止有人刷号消耗服务器存储资源
- 首页布局:在现有的列表布局上再增加一个卡片布局
- 用户名限制:后台可自行设置长度范围和保留词
- 个人简介和签名的显示是不是冲突了,两个都有的情况下就只会显示简介了,签名找到半天都没找到在哪(疑似是个bug?)
- 社交链接:增加抖音/Tiktok,Youtube,Gitee,移除LinkedIn(领英在国内应该没多少人用)
- OAuth登录:增加QQ OAuth,Wechat OAuth和Gitee OAuth支持
- 注册页面:“服务条款"和"隐私政策"可以在后台自定义指定uri跳转
- 2FA功能:支持登录时进行TOTP二验,增强账号安全性(允许管理员在后台关闭2FA,防止手贱,本人亲身体会过这种无力感)
- 数据库支持:部署时的数据库类型增加 PostgreSQL 支持
#6
abandon1a2b
回复 @nekocat
#7
nekocat
回复 @abandon1a2b
- 作者大大,问一下这个审核功能能不能在分类里面,加个当前分类下发布的帖子或回复全部进入审核的开关(特别是现在这个帖子触发敏感词进审核的模式并不适用于所有人,两个开关分开,灵活配置)
- 在首页加一个手动刷新模式,每次有新帖都要刷新一次页面才能看到未免有点太无语…
- 首页公告点击小铃铛后,停止晃动的同时变成暗色,以便更容易区分阅读状态
- 回复功能在现在的列表视图基础上新增一个树状视图,阅读性更高(类b站,微博这种评论区视图)
#8
abandon1a2b
回复 @nekocat
审核在分类里面是什么意思。 第四个我先记一下,第四个可以开发对应的服务端逻辑以后支持其他主题。
#9
nekocat
回复 @abandon1a2b
就是在创建分类的时候可以选择这个分类下发布的帖子/回复要不要全部进人工审核,已创建的分类也可以再次编辑是否开启全部审核,下面列举了几种场景
场景1:分类A开启了帖子审核,未开启回复审核
预期结果:分类A下的所有帖子都要人工审核,回复在不包含敏感词的情况下可以直接发布
场景2:分类B开启了帖子审核和回复审核
预期结果:无论是否包含敏感词,分类B下的所有帖子和回复都要人工审核
场景3:分类C开启了回复审核,未开启帖子审核
预期结果:分类C下的所有回复需要人工审核后发布,帖子在不包含敏感词的情况下可以直接发布
#10
nekocat
回复 @nekocat
因为有时候就算有敏感词也只是固定的词典,它并不能和人工比,比如我换个同音不同字在机器审核那边就发出去了,但是人工这边可以及时卡住
至于为什么不设置全站开启,一般论坛都会有闲聊灌水类的板块,不方便做这种限制,给人印象不大好,靠敏感词简单识别一下就行了,人工审核先审后发更主要是给一些重要板块创造一层保护,防止被垃圾信息污染,而且现在AI的出现,做这种事的门槛更低了,单靠敏感词和用户举报是完全不够的
#11
abandon1a2b
回复 @nekocat
哦哦,我get了,不过目前论坛支持是多分类的,不是标签,是真正意义的多分类,就是一个主题最多可以支持3个分类(为了不把索引表搞很大),私密分组的不可多分类只可单分类,按照目前的设计,特定单分类分组可以这么设置。多分组的还是需要走默认的配置。
#12
nekocat
回复 @abandon1a2b
多分类如果是:用户发帖时只要是选择了开启审核的分类的情况下,帖子也进审核呢?(不管选了多少个,只要有一个分类是开了审核的,那么就需要人工处理)而且现在市面上大多数的论坛程序都采用单分区+多标签的模式,包括流媒体网站在上传作品的时候也只能选一个分区+多个标签,只有极个别的程序支持多分区,大家都习惯了单分区模式
#13
nekocat
回复 @abandon1a2b
功能请求
- 账号注销功能:用户可在个人中心自行提交注销申请,设置24小时冷静期,提交成功后自动退出账号登录(如果反悔可在中途登录后自动终止注销流程,提交申请后的24小时内用户没有登录论坛则执行自动注销)
- Redis支持:支持配置Redis进行部分数据临时缓存,提升响应速度,降低数据库负载(特别是使用MySQL或PostgreSQL的时候)
#14
abandon1a2b
回复 @nekocat
如果不是集群配置的话暂时先不用考虑redis 。 现在的实现缓存效果远比redis效果更好,gf目前加了很多削峰的内存cache优化。
redis 只有在未来支持集群的时候替代目前的部分cache功能。
#15
nekocat
回复 @abandon1a2b
#16
nekocat
回复 @abandon1a2b
功能请求:
- 帖子正文/回复内容段落引用:可以在回复里引用一部分正文或其他回复的内容
#17
abandon1a2b
回复 @nekocat
#18
nekocat
回复 @abandon1a2b
功能请求:
- 外链风险提示:如果帖子正文或用户回复内包含了来自非可信域名的链接,则需要进行风险提示二次确认后跳转(管理员可以在后台配置可信域名,可信域名下的所有链接默认都直接跳转)
#19
abandon1a2b
回复 @nekocat
#20
abandon1a2b
回复 @nekocat
等晚上