← 返回首页

用 Astro 5 + Cloudflare 搭一个零运维的个人博客

从技术选型到数据模型,完整记录这套博客技术栈的每个关键决策与踩坑。

用 Astro 5 + Cloudflare 搭一个零运维的个人博客

这篇文章用来测试博客的各种 Markdown 渲染效果,同时记录这套技术栈的决策过程。

技术选型

层级 选型 理由
前端框架 Astro 内容站优先,MDX 一等公民,SSG 性能好
后端 API Pages Functions 随 Pages 项目一体部署,零额外配置
数据库 Cloudflare D1 SQLite 兼容,免费额度内够用
搜索 Pagefind 构建时索引,浏览器端即时搜索

代码块

// 用 ON CONFLICT 实现浏览量的幂等自增
await env.DB.prepare(
  `INSERT INTO post_stats (post_slug, views, likes)
   VALUES (?, 1, 0)
   ON CONFLICT(post_slug) DO UPDATE SET views = views + 1`
).bind(slug).run();
# 本地开发
npm run dev

# 构建(含 Pagefind 索引)
npm run build

列表与引用

  • 普通列表项
  • 支持 加粗斜体行内代码

引用块:保持好奇,持续输出。

分隔线


图片

(此处预留图片示例位,正式文章会插入截图)

小结

这套技术栈最大的好处是 零运维:写 Markdown、push、自动构建上线,数据库也不用自己管。非常适合个人博客这种低频但要求稳定的场景。