用 Hexo 加 GitHub Pages 搭一个免费个人博客的总路线,四篇分教程的入口都在这里(2022 年旧文,工具和平台以当时版本为准)。
这篇是总路线:用 Hexo 搭一个免费的个人博客,从选托管平台到发文章、修图片,每一步都链到对应的分教程。
环境只需要装好 git 和 node.js。我用的是 M1 芯片的 MacBook Pro,但 x86 架构的电脑、Windows 或 Linux 系统也都能搭。
第一步:选一个托管仓库
搭个人博客的方式和框架都很多,我选的是 Hexo。Hexo 是一款基于 Node.js 的静态博客框架,依赖少、易于安装使用,可以方便地生成静态网页托管在 GitHub 和 Heroku 上,是搭博客的首选框架。
所以我们需要一个托管平台。免费的有 GitHub、Gitee 等,我选的是 GitHub,它也是很多博主的选择。
- 注册 GitHub:github注册教程
- 熟悉 GitHub 的仓库操作,用它免费提供的网页寄存服务 GitHub Pages 建一个仓库,同步本地项目、存放博客的静态网页:githubpages创建教程
第二步:部署自己的博客
在本地部署和使用 Hexo 都要靠 node.js。node.js 是开源的 JavaScript 运行环境,跑在服务器端,采用事件驱动和非阻塞 I/O,Hexo 靠它就能很快部署起来。把本地的 Hexo 和 git 仓库同步、托管到线上,用的也是 node.js 的插件。
具体步骤见:hexo框架部署配置以及托管教程
跟着这篇做完部署和托管,你就有了自己的个人博客。
第三步:换一个主题
想让博客更好看,就要配美化主题。主题很多,常见的有轻量的 next 和功能繁多的 butterfly,我选的是 butterfly。
用 Hexo 时,我们最希望的是找到一款适合自己的主题。这些主题里饱含写作方法和 Hexo 主题修改的内容,修改方法可以查 Hexo 官方文档,这里不再赘述。比较主流的还有:
- Maupassant-体积只有 20KB,在各种尺寸的设备上表现出色。
- Matery-一个采用 Material Design 和响应式设计的 Hexo 博客主题。
- pure-特点是支持多语言;第三方评论框;可展示个人豆瓣书单;可设置支付宝、微信打赏等。
这里给两种主题方案,官方文档都写得很详细易懂:
- next 主题:next主题配置使用教程
- butterfly 主题:butterfly配置使用教程
上面 next 的链接是 iissnan 时代留下的老文档,页脚还署着“Made by IIssNan”,内容只覆盖到 5.0 及更早的版本。NexT 现在的官网是 theme-next.js.org,2026 年 8 月已经发到 8.29.0,拿 5.0 的文档去配 8.x 肯定对不上。butterfly 那篇还能用,但它要求另装两个渲染器 hexo-renderer-pug 和 hexo-renderer-stylus,少一个页面就渲染不出来;配置也建议写在 Hexo 根目录新建的 _config.butterfly.yml 里,不要直接改主题目录下的 _config.yml。
挑别的主题,去 Hexo 官方主题库 翻就行,现在收了 455 个,上面提到的 Maupassant、Matery、pure 都还在。官方在这页也说得很直白:社区主题不归 Hexo 组织维护,能不能用、安不安全,得自己判断。
第四步:写文章并上传
先准备一个 markdown 编辑器。可选的很多,用的人比较多的有 MarkdownPad、BookPad、小书匠、typora 等。学会 Markdown 的写法后,在终端进入 Hexo 根目录,用 new 命令创建文章、草稿等内容。
Markdown 语法、编辑器下载、用 Hexo 命令创建 post 并上传,都在这篇里:如何利用markdown文本编辑器编写文章并利用hexo命令上传新的文章
第五步:解决图片加载失败
写文章时可能要插图。Markdown 里的图片一般以链接或相对地址存在文件外面,生成静态文件时系统不会自动把图片一起生成或保存,博客里的图片就加载失败了。我找到了几种解决方案:解决博客文章图片无法显示问题
2026 年照着做,先看这三处变化
这套路线写于 2022 年,五步的骨架今天还成立,但有三处变化会直接影响你能不能一次跑通。
Node 版本门槛涨了
Hexo 的前置依旧只有 Node.js 和 Git 两样,但版本要求变了。Hexo 文档首页的对照表写着:
| Hexo 版本 | Node.js 最低版本 |
|---|---|
| 8.0 及以上 | 20.19.0 |
| 7.0 及以上 | 14.0.0 |
同一页正文里还留着“不低于 10.13,建议 12.0 及以上”那句旧话,没跟着表格更新,以表格为准。
部署多了一条路
当年只有一条路:装 hexo-deployer-git,hexo d 把生成好的网页推到仓库的某个分支。现在 GitHub Pages 的发布源可以选“GitHub Actions”,在 CI 里构建完直接发布,GitHub 的说法是这套流程支持任何静态站点生成器。两条路怎么选、工作流怎么写,我放在第二篇里讲。
免费有边界
GitHub Pages 免费,但使用限制写得很清楚:
- 发布源仓库推荐不超过 1 GB,发布出来的站点硬上限是 1 GB;
- 每月 100 GB 流量,是软限制;
- 每小时最多 10 次构建,也是软限制,改走自定义 Actions 工作流就不受这条限制;
- 单次部署超过 10 分钟会超时;
- 不能拿来跑在线业务、电商或商业 SaaS。
写个人博客这些额度绰绰有余。真正容易顶到 1 GB 的是图片,这正好是第五步要解决的事。
走完这五步,搭博客、用博客的初衷就实现了,可以开始经营自己的博客,写日常、学习和经验技巧了。希望你能在我的文章里找到需要的东西。
留下几句话 读者来信
读到这里,有什么想法?欢迎留下你的看法。