给静态站免费长出后台:Cloudflare 免费能力调研

大纲 · 6 节
  1. 免费额度总表(2026-08 核实)
  2. 13 项功能清单
  3. 选型决策(八问摘要)
  4. 落地路线
  5. 风险与边界
  6. 来源(Cloudflare 官方文档)

我的小站是 Astro 5 纯静态站,托管在 Cloudflare Pages(git push 即发布)。过去一直以为“交互和数据存储”要买服务器,调研后确认:CF 免费额度对个人站绰绰有余——Pages 项目里放一个 functions/ 目录,就白送一个边缘后端(Pages Functions 与 Workers 共用免费额度),静态资产请求免费无限。

免费额度总表(2026-08 核实)

产品 免费额度 说明
Workers / Pages Functions 10 万请求/天,10ms CPU/次,128MB 静态资产请求免费无限
D1(SQLite) 5GB 总量,500 万行读/天,10 万行写/天 支持 FTS5 全文检索
KV 1GB,10 万读/天,1000 写/天 写额度最紧,别当数据库
R2(对象存储) 10GB/月,100 万写/月,1000 万读/月 出站流量免费
Turnstile 免费无限验证 人机验证
Web Analytics 免费、隐私友好 2025-10 起免费域名默认开启
Cron Triggers 免费账户 5 个 定时任务
Queues 1 万操作/天 异步解耦
Workers AI 1 万 neurons/天 bge-m3 嵌入约 1075 neurons/百万 token
Vectorize 3000 万查询维度/月 + 500 万存储维度 语义搜索
Email Routing 免费(收件路由) 发件需 Paid
Hyperdrive 10 万查询/天 连外部数据库
Pages 构建 500 builds/月,20k 文件 push 即构建

三条红线:

  1. 10ms CPU/次 → 逻辑保持轻量,重活放 Cron/客户端/构建期;
  2. 50 次子请求/请求 → 别在单请求里连环 fetch;
  3. 构建零网络(本站原则)→ 动态数据要么进 git,要么运行时客户端 fetch。

13 项功能清单

  • 站内全文搜索:Pagefind(构建期静态索引,零后端)——已定稿
  • 评论/留言:自建 D1 + Turnstile(匿名、数据自主、审核队列)
  • 表单/留言板:Worker 端点 + Turnstile + 蜜罐 → D1
  • 访问统计:Cloudflare Web Analytics(零代码)
  • stars 定时同步:GitHub Actions 每天跑脚本自动 commit → 重建
  • 短链 /r/xxx:D1 存短码 → Worker 302 + 点击统计
  • 订阅/Newsletter:暂搁置(发信免费方案受限)
  • 状态页/站点监控:Cron Worker 定时 ping → D1 → /status
  • 随机“今日考古”API:把构建时翻牌改成运行时端点
  • Webhook 通知:新评论/表单转发到 IM
  • AI 摘要/自动标签:Workers AI 生成初稿、人工终审
  • 语义搜索/推荐:暂搁置(内容量小,Pagefind 已够)
  • 个人 API / JSON 输出:把 site-data 数据开放成 JSON

选型决策(八问摘要)

决策点 结论 理由
定位 先存档,按需开发 刚上线,不预先排期
站内搜索 Pagefind 零后端;D1 FTS5 留给动态数据
评论 自建 D1 + Turnstile 匿名 + 数据自主,防刷四件套配齐
统计 只要 Web Analytics 零代码;阅读量/点赞以后可选
stars 同步 GitHub Actions 数据进 git、构建零网络
表单通知 先只存 D1 邮件通知等域名迁移后
阶段 3 状态页/AI 摘要/个人 API 其余搁置
公开性 本篇即晋升版 路线图公开

落地路线

  • 阶段 0 零代码快赢:Web Analytics + Pagefind + Actions 定时 stars
  • 阶段 1 第一个后端:建 D1(评论/表单共用)+ 表单 + 短链
  • 阶段 2 互动:评论 + Webhook + 可选随机考古/阅读量
  • 阶段 3 按需长:状态页 + AI 摘要 + 个人 API
  • 搁置清单:Newsletter、语义搜索、RSS 聚合

全程不花钱、不改静态架构,随时可停。

风险与边界

  • 免费额度警戒线:KV 写 1000/天;D1 全表扫描烧行读(建索引);Cron 5 个/账户;Pages 500 builds/月
  • 中文搜索:Pagefind 中文可搜但分词要实测;D1 FTS5 中文要处理 tokenizer
  • 防垃圾:Turnstile + 蜜罐 + 限流 + 审核队列
  • 隐私:Web Analytics 不采个人数据;自建计数只存哈希不存 IP
  • 域名:Email Routing/邮件通知需要自定义域名迁到 CF

来源(Cloudflare 官方文档)