搭建“Vercel + R2”平替方案

随着 LeanCloud 免费版的限制和停运,原本那套 Valine 评论系统几乎成了“断头路”。

我不想妥协去付昂贵的月费,也不想忍受 Valine 裸奔的数据安全性。

今天花时间重新整理了一下博客架构,用 Twikoo + R2 搭建了一套纯粹、私密且零成本的平替方案。

为什么选 Twikoo + MongoDB Atlas?

LeanCloud 的停运让我意识到,核心数据必须在自己手里。Twikoo 是目前最好的平替:

  1. 安全性:评论请求通过 Vercel 后端中转,数据库密码不暴露。
  2. 自主权:数据存在 MongoDB Atlas 免费集群,支持一键备份和迁移。
  3. 功能增强:内置了管理后台、反垃圾评论和邮件通知。

实现步骤:

  • 数据库:在 MongoDB Atlas 开启一个 M0 集群(免费),拿到 MONGODB_URI
  • 后端:通过 Vercel 一键部署 Twikoo 仓库,并将 URI 填入环境变量。
  • 避坑:部署后若遇到 CORS 跨域报错,务必进入 Twikoo 管理面板,在“允许域名”中填入你的博客域名。

图床进化:从 GitHub 公开库到私有 R2

以前图床挂在 GitHub 公开库,隐私性几乎为零。这次同步切换到了 Cloudflare R2

实现步骤:

  1. 开通 R2:在 Cloudflare 创建存储桶。虽然 10GB 免费,但需要绑定卡验证身份。
  2. PicGo 插件:在 Mac 的 PicGo 插件中心搜索并安装 picgo-plugin-s3
  3. 配置占位符:最新版插件废弃了 Custom Output URL,必须在 outputURLPattern 填入 https://你的域名/{path}
  4. Typora 联动:在设置中开启“插入图片时上传”,选择 PicGo。

现在在 Typora 里 Cmd+V 粘贴图片,它会自动飞向 R2 并返回一个带私有域名的链接,极其丝滑。

极简发布:Git 推送即部署

博客托管在 Cloudflare Pages

  • 逻辑:写完文章后,一键执行 Git 提交。
  • 自动化:Cloudflare 监测到推送后自动构建生成静态页面。
  • 自定义导出:本地用 Typora,在blog项目内部设立一个提交当前推文与推送的脚本。

评论加载中...