将博客系统迁移至了 CloudFlare

将博客系统迁移至了 CloudFlare

💡 原文中文,约1800字,阅读约需5分钟。
📝

内容提要

作者将博客系统从 Vercel 迁移至 CloudFlare,使用 NextJS 和 TipTap 编辑器。在迁移过程中解决了数据兼容和导入问题,最终通过保存原始格式和 HTML 实现了兼容性。新系统支持富文本编辑,提升了内容发布的便利性。

🎯

关键要点

  • 博客系统从 Vercel 迁移至 CloudFlare,使用 NextJS 和 TipTap 编辑器。
  • 原博客系统基于 MDX 静态文件,发布流程繁琐,导致更新较少。
  • 迁移到 CloudFlare 是为了降低成本并学习新技术栈。
  • 选择 NextJS 作为前端框架,因其对 CloudFlare 的支持更好。
  • 数据库使用 CloudFlare 的 D1,静态存储使用 R2,适合博客需求。
  • 编辑器选择 TipTap,因其与已有开源编辑器兼容性好。
  • 数据迁移过程中遇到兼容性问题,通过保存原始格式和 HTML 实现解决。
  • 导入数据时,采用从生成的 HTML 抓取正文的方法,最终成功导入。
  • TipTap 编辑器在处理图文混排时遇到问题,最终找到解决方案。

延伸问答

为什么作者选择将博客系统迁移到 CloudFlare?

作者迁移到 CloudFlare是为了降低成本并学习新技术栈。

在迁移过程中遇到了哪些主要问题?

主要问题是数据兼容性和导入过程中的格式不兼容。

作者选择了哪些技术栈来搭建新的博客系统?

作者选择了NextJS作为前端框架,CloudFlare的D1作为数据库,R2作为静态存储,TipTap作为编辑器。

如何解决数据迁移中的兼容性问题?

通过在数据库中同时保存原始格式和最终的HTML来解决兼容性问题。

TipTap编辑器在使用中遇到了什么问题?

TipTap在处理图文混排时,复制粘贴的HTML内容中的图片会被移除。

作者是如何导入数据到CloudFlare的D1数据库的?

作者通过将本地的Sqlite数据库dump成sql文件,逐条上传记录到D1数据库,最终成功导入。

➡️

继续阅读