
WordPress太卡?我的博客从WP迁移到Next.js的性能优化实战
本文记录了一次完整的博客迁移过程,从卡顿的WordPress成功迁移至以Next.js为核心的现代化、高性能框架。出于对性能的追求与零成本的约束,作者选择了Next.js、Sanity、Vercel及Tailwind CSS等技术栈。文中详细分享了从选型、部署到数据迁移的实践经验,并着重解决了不支持Markdown编辑器等核心痛点。迁移后,博客在访问速度、维护成本和写作体验上均获得显著提升,实现了“一次部署、少打理”的现代化运维目标。
我的博客迁移记:从 WordPress 到现代框架
最开始,我的博客是 WordPress 搭建的,跑在 华为云香港的一台 1MB 小服务器 上,还配了安全组。主题用的是 Argon,评论系统是 WP 自带,再加 Jetpack Comments,还依赖了一些 Google 插件。日子久了,体验越来越卡,尤其是后台操作,每次打开都像在煎熬。
决定迁移的契机
2025 年 7 月,我参加了 AOSCC 2025。在会场上,一些会友直接嘲笑我用的博客引擎“太低端”。那一刻心里挺不是滋味的,就觉得:行吧,得换了。正好看到一位大佬开源的博客项目,萌生了彻底迁移的念头。
目标与约束
迁移的核心目标其实就是 性能。除此之外,我还想:
- 尽量 零成本,不用再额外掏钱。
- 写作体验要顺畅,不想再折腾插件。
- 架构上要 可扩展,避免再次陷入 WP 插件泥潭。
- 维护成本低,能“一次部署、少打理”。
- 外观现代,不要再显得过时。
- 评论系统 可控,不依赖太多外部服务。
硬约束方面:
- 内网环境必须可访问,不能再被 CDN 卡住。
- 部署区域最好在 新加坡,延迟低一点。
技术栈选择
我选择的技术栈如下:
- Next.js:对 Node 来说是展示的好选择,也能满足博客需求。
- Tailwind CSS:写样式快,不用重复造轮子。
- Sanity:暂时免费,内容管理轻松。
- Neon:数据库,够稳妥。
- Vercel:部署顺滑,对 GitHub 支持好。
- Resend:轻量邮件服务。
- Upstash:缓存和统计,免费额度够用,方便和数据库在同一区域。
- Clerk:鉴权,懒得自己造轮子,提供完整登录方式。
时间线
- 2025/07/19:第一次认真考虑迁移。
- 2025/07/25:下定决心,要彻底换引擎。
- 2025/08/12:第一版跑通,总算看到一个能用的雏形。
迁移过程
评估与准备(7/19–7/25)
最先做的事,是把旧博客的内容 全部迁移出来,防止丢失。然后开始寻找开源博客项目。最终选的技术栈对我来说是 完全陌生 的,上手难度很高。但尝试之后才发现,它的 自定义能力比 WP 强太多,尤其是 伪静态 这一块,真的值得学习。
选型与初版搭建(7/25–8/12)
开始动手搭建时,环境变量倒是顺利,但 部署简直折磨人,失败次数差不多百次,每次都焦虑不已。好在 Vercel 的通信还算顺畅,至少每次看日志能知道哪里出问题。
数据迁移与内容整理(8/12 前后)
数据迁移本身没大问题,文章内容都能搬过来,评论直接 全部不管。 最戏剧性的是内容编辑:框架 只支持内置编辑器,不支持 Markdown,而我之前习惯用 Markdown 写博客。起初没注意,以为可以直接用熟悉的方式,结果发现完全不支持。 但沉没成本太高,已经投入了很多时间,只能硬着头皮适应内置编辑器。经过几十次尝试,反复调试格式和图片,终于让内容在新框架里正常显示,心里算是松了一口气。
上线与验证
正式上线的感觉 焕然一新,界面干净、流畅,页面速度比 WP 快多了,毕竟有 内置 CDN。 不过当时一打开博客,却发现 几乎没有内容,空空如也,有点落差。心情复杂:一方面兴奋于性能提升,一方面又被内容空洞拉回现实。
网站链接与友链
上线后才发现,所有网站链接都需要重新添加,而且 友链全部没有迁移。 这一点让人感到有些无奈,毕竟之前的网络关系和站点布局全都没了,只能重新整理。 虽然耗时,但也算是一个机会,可以重新梳理内容和友链,让博客更加干净、现代。
遇到的问题 & 解决
- 最棘手的问题:框架不支持 Markdown。
解决方法:适应内置编辑器,把内容一个个搬进去,虽然不顺手,但沉没成本太高,不适合放弃。 心情:一开始很郁闷,但完成后又觉得折腾是值得的。
其他问题不多,环境变量配置顺利,Vercel 通信稳定。
迁移前后对比
- 访问速度:比 WP 快多了,页面流畅,CDN 加持明显。
- 成本:几乎零成本,核心服务都有免费额度。
- 写作体验:虽然不能再用 Markdown,但内置编辑器顺手后,也能快速写作。
- 可维护性:比 WP 简单多了,后续更新更轻松。