七月份,我写完那篇《最成功的一次红烧鱼》之后,收到了 GitHub 官方发来的一封邮件——机器人检测到我的账号存在滥用行为,直接给我的账号打上了标记。我猜大概率是我那个 RSS 的 GitHub Action 抓取太频繁了,每六小时跑一次,被风控盯上了。于是我去 Linux 论坛翻了几篇小作文模板,照着写了一份工单,向官方申请解除标记。GitHub 支持机器人回了一条,问我账号的用途,之后就没有任何工作人员再回复了。
账号被标记之后,我的博客算是彻底瘫痪了。我的博客是 Hugo 搭的,靠 GitHub Action 打包成静态资源,再自动推送到又拍云。可账号一被标记,所有公开仓库都会被隐藏,访问主页直接 404,所有的 GitHub Action 自动构建任务也全部停摆,连手动执行都不行。
就这样,我的博客稀里糊涂地停更了三个月。那段时间我正好在准备国企的面试,也就没心思管它了。
国庆期间没出去玩,我琢磨着这么被卡脖子实在太难受了,得找个别的法子,不能再过分依赖 GitHub——毕竟我的账号前前后后已经被标记不下三次了。
问了 AI,给了我一堆方案。最后我把整个项目迁移到了腾讯旗下的 cnb.cool 这个自动构建平台,博客这才恢复了更新。不过腾讯系的东西,大家懂的都懂,前期免费,后面迟早收费,但作为一个备选方案还是不错的。目前观察了两天,部署速度非常快,体验比 GitHub Action 好上不少,就是免费时长给得不多。我算了一下,差不多一个月五百多次,实际用起来也够了。
迁移到 cnb 之后,我决定用 AI 把博客的架构好好调整一下。之前服务太分散了,用起来特别麻烦——功能大大小小分布在 EdgeOne、自建 VPS、GitHub 好几个地方。于是我把所有服务都迁到了 Cloudflare,把 Artalk 的 Go 后端精简掉,全部交给 Cloudflare Worker 托管。Cloudflare 不愧是赛博大善人,还提供免费的 D1 数据库,对我们这种博客小站来说完全够用了。
把评论后端用 Cloudflare Worker 重写之后,不再依赖 Artalk 官方的后端,我发现很多之前没法实现的功能,现在都能做了。这里听我细细道来。
评论区头衔徽章
通过 SQL 查询评论条数,可以给评论的朋友设置不同的等级,还能加上专属头衔,互动性一下子强了不少。

无感评论验证
前段时间有脚本小子对我的博客搞 SQL 注入,为了拦这种人,我加了无感评论验证。正常访客会自动验证通过,在不牺牲评论体验的前提下,也拦下了一部分机器人——比如那种在各位博友评论区到处出现的“免费算命”,哈哈哈。

评论区悄悄话
有时候访客想跟博主说点悄悄话,这个功能也安排上了。
自助提交友链
在留言页面实现了自助提交友链,省去了 Hugo 那一套繁琐的流程,方便了不少。

博客的走心评论
博主在关于页面会展示自己精选的评论。

再次拾起国产 AI,真的不得不感叹 AI 发展之快。四月份用的时候,AI 做出来的东西还漏洞百出;现在只要把需求沟通清楚,它会自动兜底做回归冒烟测试,做出来的效果已经很不错了。不过写前端如果不去描述 DOM 结构,结果还是不尽人意,但 AI 的后端能力确实已经很强了。