使用 Hexo+GitHub 搭建个人博客
前情提要
你需要自己去安装nodejs和git的环境,因为Hexo 基于 Node.js,搭建过程中还需要使用 npm(Node.js 已带) 和 git,因此先搭建本地操作环境,安装 Node.js 和 Git。
这种教程csdn一搜一大堆啊,基本照着做都是下一步和最后的配置环境变量
安装完成后,Win+R 输入 cmd 并打开,依次输入
node -v
、npm -v
和 git --version
并回车,出现程序版本号即可。
然后你需要自己去注册一个GitHub账号,这里强烈建议设置SSH密钥
安装Hexo
新建一个文件夹用来存放 Hexo 的程序文件,如 Hexo-Blog
安装Hexo
使用 npm 一键安装 Hexo 博客程序:
注意:建议之后所有使用命令行安装操作都使用 管理员模式下的cmd
1 | npm install -g hexo-cli |
比较难绷的是安装时候界面没有任何反应,而且时间还不短
初始化Hexo
初始化并安装所需组件
1 | hexo init # 初始化 |
完成后依次输入下面命令,启动本地服务器进行预览:
1 | hexo g # 生成页面 |
访问
http://localhost:4000
,出现 Hexo
默认页面,本地博客安装成功!

如果出现页面加载不出来,可能是端口被占用了。Ctrl+C 关闭服务器,运行
hexo server -p 5000
更改端口号后重试。
博客文件目录结构

创建一个Github仓库来存放你的静态页面
GitHub 主页右上角加号 -> New repository:
注意,这里的仓库名字是 用户名.github.io 最好选上 “Initialize this repository with a README”
此时如果你在这个仓库上配置博客的话,博客地址为:https://用户名.github.io
部署到Github Pages
本地博客测试成功后,就是上传到 GitHub 进行部署,使其能够在网络上访问。
首先安装 hexo-deployer-git:
1 | npm install hexo-deployer-git --save |
然后**修改博客根目录下的 _config.yml** 文件末尾的 Deployment 部分,修改成如下:
1 | deploy: |
这里说一下yml文件的格式,yml缩进有严格的格式要求,而且每个字段后的冒号之后必须有空格才能输入有效
完成后运行 hexo d
将网站上传部署到 GitHub Pages。
完成!这时访问我们的 GitHub 域名
https://用户名.github.io
就可以看到 Hexo 网站了。
绑定域名
博客搭建完成使用的是 GitHub 的子域名(用户名.http://github.io),我们可以为 Hexo 博客绑定自己的域名替换 GitHub 域名,更加个性化和专业,也利于 SEO。
建议这里使用免实名的域名,实名一个域名比较麻烦,而且要等
域名注册和解析
- 域名注册和解析教程:Namesilo 域名购买及使用教程
按上面教程注册并解析域名,在 DNS 设置部分,删除自带的记录,然后添加
CNAME 记录将 www 域名解析指向 用户名.github.io
。

绑定域名到 Hexo 博客
进入本地博客文件夹的 source 目录,打开记事本,里面输入自己的域名,如 http://www.example.com,保存名称为 “CNAME”,格式为 “所有文件”(无 .txt 后缀)。
清除缓存等文件并重新发布网站:
1 | hexo clean # 清除缓存文件等 |
现在就可以使用自己的域名访问 Hexo 博客了。
开启HTTPS
配置自己的域名后,需要我们手动开启 HTTPS。打开博客所在 GitHub 仓库,Settings -> 下拉找到 GitHub Pages -> 勾选 Enforce HTTPS。

HTTPS 证书部署成功需要一定时间,等大概几分钟再访问域名,就可以看到域名前面的小绿锁了,HTTPS 配置完成!
关于使用
发布文章
进入博客所在目录,右键打开 Git Bash Here,创建博文:
1 | hexo new "My New Post" |
然后 source 文件夹中会出现一个 My New Post.md 文件,就可以使用 Markdown 编辑器在该文件中撰写文章了。
写完后运行下面代码将文章渲染并部署到 GitHub Pages 上完成发布。以后每次发布文章都是这两条命令。
1 | hexo g # 生成页面 |
也可以不使用命令自己创建 .md 文件,只需在文件开头手动加入如下格式
Front-matter 即可,写完后运行 hexo g
和 hexo d
发布。
1 | --- |
常用命令
1 | hexo new "name" # 新建文章 |
我的另一篇博客也提到了hexo命令的基本用法,可以看看