记录了通过github pages功能搭建hexo博客的过程

环境搭建

hexo博客环境需要用到nodejs,git和npm,本文仅展示ArchLinux下的环境搭建

1
2
3
yay -S npm git node
npm install hexo-cli -g
npm install hexo-deployer-git --save # 自动部署发布工具部署

创建博客项目

1. 新建文件夹(必须是空的,否则创建失败)并且进入
2. 再该目录打开终端输入命令进行项目初始化
1
hexo init   #如果提示找不到命令则输入npx hexo init

创建GitHub仓库

首先生成本机的ssh密钥

1
ssh-keygen -t ed25519 -C "blog"

然后复制.ssh/id_ed25519.pub文件内容

1
cat .ssh/id_ed25519.pub

最后将复制内容粘贴近GitHub设置新增ssh密钥页面

创建仓库,仓库必须公开,并且命名格式为:

1
用户名.github.io

配置git

配置git用户名和邮箱

1
2
git config --global user.name "用户名"
git config --global user.email "邮箱地址"

在博客项目根目录打开_config.yml文件,文件末尾内容替换为

1
2
3
4
5
6
deploy:
type: git
repository: git@github.com:用户名/用户名.github.io.git
branch: master

# repository为github的仓库地址,branch为分支名称

生成静态网页并推送至GitHub仓库

1
2
hexo g			#生成静态网页
hexo d #推送至github仓库

博客信息配置

修改项目根目录_config.yml文件

1
2
3
4
5
6
7
8
## Site
title: 标题
subtitle: 副标题
description: 描述
keywords: 关键词
author: 站主
language: 语言(可以填写zh-CN)
timezone: 时区(可以填写Asia/Shanghai)

发布文章

hexo可以通过命令生成新文章,文章以md格式存放在source/_posts,建议搭配Typora来写文章

1
hexo new 文章名称

更换主题

hexo有大量主题可供更换,本文使用butterfly主题

在文件根目录拉取主题项目

1
git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly

修改 Hexo 根目錄下的 _config.yml,把主題改為 butterfly

1
theme: butterfly

安装渲染器插件

1
npm install hexo-renderer-pug hexo-renderer-stylus --save

复制主题目录的_config.yml文件至项目根目录并重命名为_config.butterfly.yml

绑定域名

配置域名解析,将 DNS 配置里面的 A 记录指向这 githhub page的IPV4地址

1
2
3
4
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153

打开博客的github仓库点击settings选项卡点击pages项目在Custom domain中填入需要绑定的域名

tip: github会将dns解析至www.域名,如果在域名解析是配置的域名没有www需要增加一条解析记录将www.域名指向解析的域名。