我短短续续的写博客差不多也有很多年了, 只不过一直没有太坚持下来。 Wordpress , Jekyll , Ghost 等都试过, 最后还是使用Astro来搭建自己的博客, 也算是坚持了比较长的时间了。 当Cloudflare宣布他们的Wordpress替换 EmDash 的时候, 由于是Vide Code的, 我第一时间没有上手, 在过去几个月之后,发现还在持续保持更新, 并且已经有不少人进行迁移之后, 我也开始着手进行迁移
使用Claude Code进行替换
在2026年9月份的现在,绝大部分人应该都会通过AI来进行迁移吧, 现在的AI已经足够优秀了, 所以我只是打开了 Claude Code, 然后输入
https://docs.emdashcms.com/existing-project/
参考这个, 把现有的astro 更改成使用 emdash 管理的CMS 然后AI就会开始根据文档以及现有现有的项目构造进行安装Emdash。我这边安装了 CloufFlare 的Connector, CC甚至还能够直接为我创建D1和R2, 真的是省心又省力。



在经过一段时间后,我这边已经顺利部署EmDash到CF上, 并且已经成功设置 EmDash的后台使用PassKey登录(which 是个坑, 在后面的文章会讲到)。
初步部署的两个核心要点总结
虽然在 Claude Code 的帮助下,整个部署链路非常丝滑,但结合实际操作,有两条至关重要的经验必须提前提醒大家:
1. 原有的 MDX 文章:必须百分之百确认在 EmDash 入库后再删!
本地 Markdown/MDX 文件是你在 Git 里的绝对资产。在将内容导入 EmDash 后,务必在 Admin 后台和前端页面挨个确认数据已经完整存在于 Cloudflare D1 数据库中,**千万不要在部署成功的第一时间就急着把本地原文件删掉**。先留一份完整的归档备份,确认数据无损再做清理。
2. 强烈建议:先配置好自定义域名,再去设置 PassKey 登录!
这是一个绝大多数人(包括我)极容易踩中的隐蔽暗坑:
- 很多人在刚部署完时,会习惯性地在默认生成的 *. workers.dev 临时域名下完成后台初始化,并顺手绑了自己设备的 PassKey。
- 然而,PassKey(WebAuthn)是强绑定访问域名的(Origin / rpId)。一旦你后续绑定了自己的独立自定义域名,**通过自定义域名访问时,原有在 workers.dev 下创建的 PassKey 将直接失效,无法用于登录!**
下篇预告:那个让我差点被锁在后台外面的 PassKey 暗坑
上一节提到的第二个要点,其实就是我在这次部署中最真实的一个切肤之痛:
当时我在 workers.dev 下高高兴兴地配好了 PassKey,但当我把自己的独立域名绑定上去后,发现自定义域名的后台根本刷不出那个 PassKey。
这时候系统提示可以用邮箱验证码登录,结果尴尬的事情来了——**我当时压根还没有去配置邮件服务(Email Provider)!**
PassKey 用不了,邮箱验证码收不到,我险些直接把自己亲手搭建的后台锁死在门外……
究竟该如何脱困?Cloudflare 边缘环境下的邮件插件又该怎么配?下一篇文章,我们专门来深挖这个让人哭笑不得的 PassKey 与登录鉴权踩坑实录。