1 Hexo是什么?

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

2 如何使用Hexo?

2.1 安装

2.1.1 安装前提

在安装Hexo前,需要确保你已安装GitNode.js

2.1.2 安装Git

下载并安装Git

使用 Homebrew, MacPorts 或者下载 安装程序

1
sudo apt-get install git-core
1
sudo yum install git-core

2.1.3 安装Node.js

通过 nvs 或者nvm 安装。

使用 Homebrew, MacPorts 安装。

NodeSource 安装。

使用相应的软件包管理器进行安装,可以参考 Node.js的下载指导

2.1.4 安装Hexo

完成安装前提后,即可使用npm来安装Hexo。

鼠标右键单击选择Git Bash,打开终端,输入以下命令进行安装:

1
npm install -g hexo-cli

安装完成后,输入以下命令检查安装是否成功:

1
hexo -v

成功后则会显示具体版本号,大致如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
lyl@lyl-PC MINGW64 ~/Desktop 
$ hexo -v
hexo-cli: 4.2.0
os: Windows_NT 6.1.7601 win32 x64
node: 12.16.2
v8: 7.8.279.23-node.34
uv: 1.34.2
zlib: 1.2.11
brotli: 1.0.7
ares: 1.15.0
modules: 72
nghttp2: 1.40.0
napi: 5
llhttp: 2.0.4
http_parser: 2.9.3
openssl: 1.1.1e
cldr: 36.0
icu: 65.1
tz: 2019c
unicode: 12.1

2.1.5 Node.js版本限制

Node.js 版本需不低于 10.13,建议使用 Node.js 12.0 及以上版本。

Hexo 版本 最低兼容 Node.js 版本
5.0+ 10.13.0
4.1 - 4.2 8.10
4.0 8.6
3.3 - 3.9 6.9
3.2 - 3.3 0.12
3.0 - 3.1 0.10 or iojs
0.0.1 - 2.8 0.10

2.2 建站

2.2.1 初始化

首先创建一个文件夹HexoBlog,用于存放所有建站的相关文件:

1
mkdir HexoBlog

然后在终端输入如下命令进行初始化:

1
hexo init HexoBlog

初始化完成后,提示信息如下:

1
2
3
4
5
6
7
8
9
10
11
12
lyl@lyl-PC MINGW64 /e/MyData 
$ hexo init HexoBlog
INFO Cloning hexo-starter https://github.com/hexojs/hexo-starter.git
INFO Install dependencies
added 190 packages from 160 contributors and audited 196 packages in 53.858s

15 packages are looking for funding
run `npm fund` for details

found 0 vulnerabilities

INFO Start blogging with Hexo!

HexoBlog文件夹目录结构如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
.
├── node_modules
├── scaffolds
| ├── draft
| └── page
| └── post
├── source
| ├── hello-world.md
└── themes
└── .gitignore
├── _config.landscape.yml
├── _config.yml
├── package.json
├── package-lock.json
文件/文件夹 描述
node_modules 模块文件夹,存放下载的模块。
scaffolds 模板文件夹,Hexo根据模板来新建文章或页面。
source 资源文件夹,存放用户资源。除_posts文件夹之外,开头命名为 _ (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。
themes 主题文件夹,Hexo根据主题生成静态页面。
.gitignore 忽略文件模板,被忽略的文件不会进入版本控制。
_config.landscape.yml 默认的主题配置信息
_config.yml 网站的配置信息
package.json 应用程序的信息。EJS, StylusMarkdown renderer已默认安装,可自由移除。
package.json 应用程序的信息,锁定安装时的包的版本号,保证其他人在npm install时,依赖能保证一致。

2.2.2 命令

  1. init(初始化)
    1
    2
    # 初始化一个名为FOLDER_NAME文件夹
    hexo init FOLDER_NAME
  2. new(新建)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    # 新建一篇名为POST_NAME的文章
    hexo new POST_NAME

    # 新建一个title为About me的页面并指定路径
    # 此时会在`source/about`下创建一个`me.md`文件
    hexo new page --path about/me "About me"

    # 新建一个名为about的独立页面
    hexo new page about
  3. generate(编译生成)
    1
    2
    3
    4
    # 编译生成
    hexo generate
    # 简写
    hexo g
  4. server(启动预览)
    1
    2
    3
    4
    # 启动预览
    hexo server
    # 简写
    hexo s
  5. deploy(部署)
    1
    2
    3
    4
    # 部署
    hexo deploy
    # 简写
    hexo d
  6. clean(清除缓存)
    1
    2
    # 清除缓存
    hexo clean

2.2.3 预览

初始化完成后,就可以进行编译、预览来查看网站的效果了。

终端输入如下命令进行编译、预览:

1
2
3
4
# 进入HexoBlog
cd HexoBlog
# 编译并生成预览
hexo s -g

浏览器输入http://localhost:4000查看效果:

预览效果