前言
六年前,我将博客从《WordPress 迁移至 Hexo》并阐述了一些原因,那么本文也继承传统,像你介绍我将博客从 Hexo 迁移至 Vite SSG 的过程
原因
部署体验不佳
主要原因是我懒,最早其实使用的《Github Actions Hexo 自动部署》。后来服务器迁移需要重新配置,以及本身这个方案就不够优雅。慢慢就回到古法部署了,手动打压缩包上传
第二是之前用的 Hexo 主题,作者更新不做向后兼容,导致我每次更新都要手动对比配置文件
第三是两台电脑打包 Hexo 的产物不一致,出现过一台电脑打包的博客图片预览失效的问题,这个原因估计还是主题配置,但最终懒得折腾了
大佬的个人网站
看到大佬的个人网站antfu/antfu.me,其中有博客页面,于是就去研究了一下,发现是用的 Vite SSG 构建的。让我直呼牛逼的点是,你可以直接在 .md 文件中写 Vue 组件!
于是一年前我就开了个新坑imba97/blog-vite,但奈何于我审美有限,写页面太枯燥就暂时搁置了一段时间
迁移
还是得益于 AI,现在可以很方便的写 UI 和做前端各种杂七杂八的优化,于是几周前这个项目又启动了
底层开发
后面又在大佬项目的基础上,增加了评论、搜索等功能。还有各种优化,比如 netlify-image-plugin 插件,可以自动将图片转换为 CDN 地址
本质上就是前端那些东西,逻辑是通过插件读取 posts 目录下的 .md 文件,并生成对应的路由及实际页面
你甚至可以通过 vite-plugin-inspect 插件查看一个坚强的 Markdown 是怎么一步一步走过来的(bushi)

文章迁移
大部分文章可以无缝迁移,部分内容通过 Vite 打包时报错,不过我已经忘了具体是什么了,印象里被这个折磨了一阵子
部署
直接使用 Netlify 部署,相当方便,只需要登录后选一下仓库基本就可以了
并且可以持续集成,每次提交代码都会自动部署。我还给页脚加了本次构建的 Hash 信息,每次版本都可以查看对应的提交记录
爷青结
用了六年多的 Hexo 退役了,👴 的青春结束了