disqus已卸载,手搓了套blog评论系统 - req4cmt

💡 原文中文,约1100字,阅读约需3分钟。
📝

内容提要

由于Disqus被墙且插入广告,作者决定自制博客评论系统。该系统使用Python的Dulwich和Node.js的Isomorphic-git,评论以JSON格式存储,并支持直接写入Git仓库。项目已在GitHub发布,欢迎反馈。

🎯

关键要点

  • 由于Disqus被墙且插入广告,作者决定自制博客评论系统。

  • 该系统使用Python的Dulwich和Node.js的Isomorphic-git,评论以JSON格式存储。

  • 评论系统支持直接写入Git仓库,方便备份和迁移。

  • 项目在GitHub发布,欢迎反馈。

  • 评论列表以域名/路径.jsonl格式保存为纯文本,方便diff和moderation。

  • 为了防止spam,作者采用了hidden input的方式。

  • 项目依赖于Cloudflare和GitHub的免费额度,可能会受到请求频率的限制。

  • 作者成功导出了Disqus的旧评论,保留了多年的回忆。

🔎

延伸解读

自制评论系统的优势

作者自制的评论系统不仅解决了Disqus被墙和广告插入的问题,还能直接将评论写入Git仓库,方便备份和迁移。这种设计使得用户在更换平台时可以轻松搬家,避免了数据丢失的风险。

技术选择的考量

在选择技术栈时,作者考虑了多种因素,包括环境限制和性能需求。使用Dulwich和Isomorphic-git的组合,既能满足在Cloudflare的serverless环境中运行的需求,又能实现高效的文件操作。这种灵活性为开发者提供了更多选择。

防止垃圾评论的策略

为了防止垃圾评论,作者采用了hidden input的方式,这是一种简单有效的防护措施。然而,这种方法并不能完全杜绝所有垃圾评论,未来可能需要考虑更复杂的验证机制,以提高系统的安全性。

项目的依赖与限制

该项目严重依赖于Cloudflare和GitHub的免费额度,可能会面临请求频率的限制。这意味着在流量较大时,系统可能会受到影响,开发者需要提前考虑如何应对潜在的流量高峰。

延伸问答

为什么作者决定自制博客评论系统?

因为Disqus被墙且插入广告,使用不便。

这个评论系统是用什么技术实现的?

使用Python的Dulwich和Node.js的Isomorphic-git。

评论是如何存储的?

评论以JSON格式存储,并支持直接写入Git仓库。

项目在哪里可以找到?

项目发布在GitHub上,链接是https://github.com/est/req4cmt。

如何防止评论中的垃圾信息?

作者采用了hidden input的方式来防止spam。

评论列表是如何格式化的?

评论列表以域名/路径.jsonl格式保存为纯文本,一行一条评论JSON。

🏷️

标签

➡️

继续阅读