我的Hexo博客搭建记录
前言
一直想有个自己的博客,写点技术笔记、记录生活什么的。之前试过 WordPress,太重了,光是搭环境就要折腾半天。后来发现了 Hexo —— 一个基于 Node.js 的静态博客生成器,轻量、快速、部署简单,特别适合自己这种想快速上线的人。
这篇就记录一下从零搭建到上线的整个过程。
为什么选 Hexo
选 Hexo 主要因为几个原因:
- 快 —— 静态页面,生成后直接扔到服务器上,不需要数据库
- Markdown 写作 —— 不用碰富文本编辑器,写起来舒服
- 主题多 —— 社区有大量好看的主题可以直接用
- 免费托管 —— 可以放 GitHub Pages,也可以自己部署到服务器
对比了一下 Hugo、Jekyll,最后还是选了 Hexo,主要是中文社区大,遇到问题好查。
搭建过程
1. 本地初始化
首先要装 Node.js,然后全局安装 Hexo CLI:
1 | npm install -g hexo-cli |
这三步会在当前目录生成一个完整的博客骨架,hexo server 本地就能预览。
2. 选主题:Butterfly
Hexo 自带的主题是 landscape,说实话不太好看。换了好几个主题之后,最终选了 Butterfly。
Butterfly 的优点:
- 设计简洁现代,符合我的审美
- 自带暗色模式切换
- 支持 Pjax 无刷新加载
- 文档详细,中文友好
- 侧边栏、标签云、归档等功能开箱即用
安装方式很简单,直接在博客目录下:
1 | git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly |
然后在 _config.yml 里把 theme 改成 butterfly 就行。
3. 基础配置
Hexo 的配置文件主要有两个:
_config.yml—— 站点配置(标题、描述、URL 等)_config.butterfly.yml—— 主题配置(样式、功能、侧边栏等)
我改了这些关键配置:
1 | # 站点配置 |
头像、背景图、Favicon 这些都在主题配置里改,放到 source/images/ 目录下就行。
4. 部署到服务器
我用的是阿里云 ECS(Ubuntu),部署思路是:
- 本地
hexo generate生成静态文件 - 把
public/目录同步到服务器 - 服务器上用 Nginx 做 Web 服务
Nginx 配置很简单:
1 | server { |
域名是在阿里云注册的,DNS 解析指向服务器 IP 就行。HTTPS 用 Let’s Encrypt 免费证书,certbot 一键搞定。
5. 配置自动部署
每次写完文章都要手动 generate + deploy 太麻烦了,所以我写了个简单的部署脚本:
1 |
|
配合 Hexo 的 deploy 配置,一条命令就能发布。
写作流程
现在我的博客写作流程是:
- 本地
hexo new "文章标题"创建新文章 - 用 Markdown 编辑器写内容
hexo server本地预览- 确认没问题后部署上线
整个过程很流畅,从写完到发布也就几分钟。
遇到的一些坑
- 中文标题的 URL 编码 —— Hexo 默认会对中文标题做 URL 编码,生成的链接很长。可以通过
pretty_urls配置优化,或者写文章时用英文文件名 - 图片路径 —— Markdown 里的图片路径要用
/images/xxx,不是相对路径,不然详情页会加载不出来 - 主题更新 —— Butterfly 主题用 git clone 安装的话,更新时要注意不要覆盖自己改过的配置。推荐用
_config.butterfly.yml覆盖配置,这样更新主题不会丢设置
写在后面
从零搭建一个博客其实没有想象中那么难。Hexo + Butterfly 这个组合对新手很友好,基本上半天就能跑起来一个还不错的博客。
接下来打算多写点东西,把这里当成自己的技术笔记和生活记录本。如果你也想搭一个自己的博客,Hexo 是个不错的起点。
博客地址:wenxixixi.cc
