Wordpress 时期

16 年初买过阿里云的学生服务器做 wordpress 博客,还搞了域名备案什么的,最后上面只发了课堂 Linux 笔记。当时一搜自建博客都推荐 wordpress。到 16 年后半年时在网上看到 Github Pages ,不要服务器还可以绑域名,竟然有这等好事!从此开始了 Hexo 的静态博客之路。

Hexo Hugo

后来换成了 Hugo。用 Go 写的编译比 Hexo 快多了,有比较现代化的主题。但感觉好多喜欢的模板都在 Hexo 上,又换了回去。

我自己是喜欢功能很全的极简风,网站装修这种东西,弄久了就是想手搓。再往后学了 React,但当时做了个 SPA 后发现,这对搜索引擎不友好。Next.js 的出现打破了这个问题,可以导出静态页面,当时觉得简直是魔法。从此走上了手撮博客的道路。

Next.js

手搓博客大致要求是:

  • 博客主体完全静态
  • 完全兼容 Hexo 用法
  • 有无限滚动的说说页面
  • 有评论阅览量统计
  • 有站内全文搜索
  • 有 rss 和 sitemap

技术选型参考的 Josh WComeau 文章。当时他看好 Styled-Components 和 Mdx(老实说现在觉得是个错误,一是还是要自己做 CSS 水合避免闪屏,二是,写文章时真的不会想写代码,图片都懒得加,最后还只是用 .md)

但是当时 Next.js 的 SSG 只有 Pages Router,不使用他家的 ISR(需要服务器)就很难做不被卸载的菜单栏和全局进度条动画。并且有的小版本代码分割有问题,rss 的编译部分老被认成客户端,我服了,有点讨厌这个框架了。

去年有朋友帮我用 AI 重构到了 App Router。但他用了一个现成的 Markdown 库,但我为了让说说部分写起来简单,以及渲染看起来长得像社交媒体,解析是手撮的。所以说说相关的部分,以及 rss 、搜索,都没挪过去,功能缺了很多。

React Router 7

后来想了想,我用 Next.js 不就是看重他的路由和 SSG。既然 React 18 有 RSC 了,那我不如直接 React,静态渲染就抓路由用 renderStaticMarkup 跑一遍好了……

于是上个月问了问哈基米,接触到了 React Router 7,一个完美符合我需要的路由框架。还接触到了 Velite 预构建数据。用 AI 做技术选型还是靠谱的。元旦前一天开始改了 7 天,重构了,并且加好了我心心念念的静态页面间全局进度条。

离开了 Next.js 后,才发现原来外面根本没下雨,原来静态页面导出并不需要 30 秒,只需要 3 秒啊……React Router 7 目前在我心中是完美的路由框架,他只是个处理路由的,写起来是 React 本身的自由度。

不过搓了半天文章没怎么写,全在吹水,说说算是最值得的一个模块了。

所以请看博客

还有 404 页面(不是

性能 Desktop:

主页:

原本的说说页面是打算拿 telegram 和 X 的 api 做同步的。但后来发现其实 iCloud 同步到手机上开 Obsidian 写也是一样的…… Obsidian 还有 Dataview 和 模板 QuickAdd 按钮,何尝不是一种静态博客后台管理工具。……

评论是 Waline,从 Valine 迁移的。还是万年的 LeanCloud 免费额度数据库,反正没人哈哈。


📌 转载信息
原作者:
illy
转载时间:
2026/1/8 10:28:31

标签: Next.js, Hexo, React Router, Static Site Generation, Blog Migration

添加新评论