惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
P
Privacy International News Feed
P
Proofpoint News Feed
Security Archives - TechRepublic
Security Archives - TechRepublic
C
CXSECURITY Database RSS Feed - CXSecurity.com
Know Your Adversary
Know Your Adversary
Security Latest
Security Latest
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Attack and Defense Labs
Attack and Defense Labs
NISL@THU
NISL@THU
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
GbyAI
GbyAI
N
News and Events Feed by Topic
N
News | PayPal Newsroom
Y
Y Combinator Blog
C
CERT Recently Published Vulnerability Notes
N
Netflix TechBlog - Medium
S
Security Affairs
Spread Privacy
Spread Privacy
罗磊的独立博客
腾讯CDC
MyScale Blog
MyScale Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
L
LINUX DO - 热门话题
The Cloudflare Blog
L
LangChain Blog
博客园_首页
H
Hacker News: Front Page
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
SecWiki News
SecWiki News
A
Arctic Wolf
爱范儿
爱范儿
Google Online Security Blog
Google Online Security Blog
T
Threat Research - Cisco Blogs
Hacker News - Newest:
Hacker News - Newest: "LLM"
有赞技术团队
有赞技术团队
The GitHub Blog
The GitHub Blog
Cyberwarzone
Cyberwarzone
博客园 - 叶小钗
V
Visual Studio Blog
V
V2EX
T
Tailwind CSS Blog
Project Zero
Project Zero
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
MongoDB | Blog
MongoDB | Blog
D
Docker

达拉斯・卢

OpenWRT 使用 udp2raw 对抗 WireGuard 阻断 博客程序架构的思考与展望 如何证明你是原创作者 Nginx 泛域名配置的隐患与对策 WISeID S/MIME 证书 V2EX 刑满释放记 使用 Radicale 在 Ubuntu 24.04 中搭建 vCards CardDav 服务 邮件服务的域名成功从 SURBL 黑名单移除 网站多语言的设计细节 在公网使用 iptables 转发端口时保留客户端 IP 邮件投递平台 Postal 的使用经验 自建 Postal 完美替代 SendGrid 互联网在崩塌吗,然后呢 在 SvelteKit 应用中使用 JSON-LD 网页的打印样式应该怎么写 “茴字的四种写法”之 IP 与域名 怎么伪造 Git 提交的时区 供大众交流的论坛和其它替代产品还是不好用 改编不是照搬 一次排查诡异的网络问题的经历
网站评论系统的目前进展和展望
达拉斯・卢 · 2024-08-08 · via 达拉斯・卢

一年多前,我研究了一下当时评论系统的现状,最后给网站选择了传统的评论系统。截至目前,有了一些新的进展,和新的想法。

进展

接入 Webmention

出于研究的目的,接入了 Webmention。方便起见,选择了 webmention.io。通过一些桥接服务,可以主动地收集到更多散落各处的互动信息。比如,你将文章链接发布到社交媒体,并收到了一千个赞,这一千赞可以显示在文章上1

理论上,通过桥接,可以收集到更多类型的内容,比如 Hacker News 上的讨论互动。如果整合 Nostr 的话,就不需要网站本身接入 Nostr 网络了。

接入邮件

邮件通知

传统评论与邮件是一对老搭档了。为了更好地发送评论相关的邮件通知,我还从 SendGrid 迁移到了 Postal。

早年间,豆瓣网的站内信的邮件通知,只有一句话:你有新豆邮。我对此非常愤恨,明明邮件都发过来了,也不说一下是谁发的,说了什么。还要辛苦地登录网站去看。所幸,博客界一般都比较开放,如果你在网站发布的评论,被他人提及或回应,一般就会收到包含全文详情的邮件。

邮件回复

明明全文详情都发过来了,为什么不能直接回复呢?太多的通知邮件的发件信箱都是noreply@*,除了一些商家的工单系统,以及 Github 等服务。从这点来说,借用 Github Issue 来实现评论系统的方式还真是很棒。

通过邮件回复,也并不难,可以使用现代的邮件平台,他们可以把解析好的邮件内容转发到指定的 Http Endpoint 上2

使用邮件来做评论系统,可以让讨论博客文章像使用邮件列表一样。在页面上也很方便地处理成嵌套评论。

邮件评论

再进一步,为什么发邮件只能用来回复邮件通知呢?或许可以主动出击,可以打开邮箱客户端,直接发送邮件来评论文章或是别人的评论。喜欢用邮件来与人交流的,有福了,终于。

在发表评论的按钮旁,我放置了一个 mailto 协议的超链接,点击打开邮件客户端,就可以用发邮件来替代页面表单。

访客的身份

如果你用发邮件的方式来评论,那么你的邮箱地址就自然是有效的。在网站上就可以显示一个认证图标,以向人明示,这人使用了真实的邮箱。

当然这不是说,使用表单评论的人的邮箱就算是无效的。不过,谁知道呢,邮箱一栏是可以随便填的,可以填别人的,也可以填一个假的。

既然邮箱不一定是真实的,索性,我就允许你不写邮箱。让你彻底享受隐私的礼遇、上网的快乐,代价是在你的信息旁边显示一颗狗头——在网络上没人知道你是一条狗。

既然邮箱这样的东西,都可以不填了,那么名称也就更无所谓了。当然,后面这种信息不全的回复,是会受到一定的发送限制,以及可能需要审核。

敏感信息

一条评论,大概只有两个字段是敏感的,IP 与邮箱。我的文章内容是基于 markdown 文件的,非常便于开源。但本地评论中的敏感信息,则需要加密存储,使用时再使用密钥还原。

展望

改进

性能与有用的小功能,是永远的改进方向。比如分页加载、投票、查询等等。以及,更好的邮件通知。因为在使用 WordPress 的日子里,网站常常被 Spam 评论轰炸,而我的邮箱则被评论的邮件通知轰炸。

整合

我认为文章的评论,是文章内容的延伸。如果没有评论,那么还不如直接在 RSS 阅读器、公众号平台、营销号发的截图里读一读就算了。除了联系作者外,就没有必要访问文章了。所以四处散落的信息,可以收集起来,让读者更直观地评估文章。

评论服务

当前静态网站非常流行,更多的时候大家需要的是一个第三方评论系统。鉴于多说关闭事件,使用第三方评论系统的风险也必须要考虑。如果我来做一个评论系统的话,那么最重要的一点就是数据随时可导出,或者说实时导出——因为我的评论系统目前是基于文件存储的,可以 push 到 git repo。

结语

个人网站或博客,已经是一种怀旧玩具了。最近竟看到有人还在折腾第三方评论系统3,或是自研程序和评论系统4。怀旧不一定复古,应该会有更多花样。


  1. Jason. 透過 webmention 來搜集 blog 的社群迴響. Jason's Web Memo. 2022-09-12. ↩

  2. Tautvydas Tijūnaitis. Enable the use of email replies to post comments or messages. Mailersend. 2022-05-25. ↩

  3. ashin. 个人博客新增云评论留言板,欢迎大家测试. V2EX. 2024-08-06. ↩

  4. Darmau. This site has evolved to the third generation. Darmau. 2024-08-05. ↩