· 5 min read
重构站点小记
从使用 Hexo 框架自建站点到使用 Next.js 框架部署在 Vercel, 记录一下重构博客过程中的思考
2021 年 6 月, 突然有了一些创作和分享欲, 想要把自己平时折腾各种玩意儿时踩过的坑和学到的知识分享出来, 于是便开始寻找合适的博客方案. 正好新办了一张外币信用卡, 可以免费用甲骨文的主机, 于是就有了基于 Hexo 框架的第一个静态博客.
选择 Hexo 框架主要看中其良好的生态 (丰富的插件, 主题…) 和社区支持, 对新手比较友好; 选择甲骨文则是因为其声称提供的主机是永久免费的, 配置虽然低了点, 但是对于搭建博客来说也够用.
博客最初用的是 Next 主题:
NexT - Theme for Hexo (theme-next.js.org)
后来换成了 Cactus:
probberechts/hexo-theme-cactus: A responsive, clean and simple theme for Hexo. (github.com)
期间自己做了一些小修改和美化, 博客稳定运行了一年多.
不过前阵子尝试登录甲骨文 Web 管理页面的时候因为忘记密码帐号被锁定了, 运行博客的主机也被暂停, 博客暂时下线. 正好最近有重构博客并且直接托管到平台的打算, 干脆直接暂停一段时间, 重新思考一下应该如何构架博客的问题.
首先是框架问题. 当然可以选择之前已经非常熟悉的 Hexo 框架, 或者 Hugo 等框架, 不过之前接触到 Next.js, 对其支持的很多特性心向往之, 因此果断选择了 Next.js 框架. 当然, 更多特性也伴随着更复杂的功能, 这也给后续部署带来了一些困难, 这里先按下不表.
其次是托管平台问题. 之前托管在 VPS, 好处是所有东西都可以自定义, 但是缺点也不少:
- 需要找到好的 VPS 提供商. 长期租用 VPS 就是一笔不小的开销, 甲骨文免费套餐虽然提供了一种低成本方案, 但是依然有一定风险.
- 需要花时间做服务器运维, 维护起来还是需要花一定时间. 之前都是在本地生成页面再 push 到服务器上, 这个创作流程也不是特别流畅. 相反地, 托管平台基本都提供了将内容 push 上去之后自动构建生成页面的功能, 可以稍微更专注于创作
权衡之后我还是选择了基于 Next.js 框架搭建博客, 并托管到内容托管平台.
不过中间一直在忙各种事, 因此这件事也一拖再拖, 直到我找到了 Nobelium 主题. 它将 “专注于内容创作” 推进了一步, 直接从 Notion 中拉取内容并生成页面. 我自己是重度 Notion 用户, 这个博客主题能够让我在想写的时候随手就能写. 此外, 它的一些细节也做得非常完善, 比如支持通过 Notion 中的页面属性定义文章创作工作流 (Idea, Draft, Revise, Published) 等.
在 Vercel 上部署博客也非常快, 几分钟时间就搭建好了博客.
希望简化了创作和发布流程之后自己能多写几篇或者省下点时间做其他事吧.
此外, 这次站点重构我也希望对自己的行文风格作出一些改变. 先前在写博客的时候, 经常控制不住自己追求面面俱到的毛病, 在一篇文章里塞进大量内容, 重复造轮子浪费了大量笔墨, 也破坏了文章的结构性. 因此以后新的文章我希望尽量精简文字, 对于网上已经有比较完善内容的, 直接贴上链接, 把自己的笔墨主要放在别人没有写到的地方.