基于Hexo的本地博客搭建

前言

在21年下半年进实验室做了半年的科研训练,觉得应该适时地对自己的学习经历做阶段性总结,既可以用来复习回顾,又可以形成一种正反馈的成就机制,于是决定搭建一个自己的博客。网络上已经有一些非常详细的教程,本文也参照了这些教程,不过考虑到日后重建的需要,还是自己再做一遍总结比较妥当。日后的个性化定制、写作、服务器部署等等之后会写在其他文章里作为补充。

本博客搭建使用 Hexo 框架,它是基于 Node.js 的高效静态站点生成框架。通过 Hexo,可以使用 Markdown 语法来撰写文章,再生成静态网站并部署到本地或者服务器端。因此我们可以专注于写作的内容,不需要担心网页源代码的具体细节。

安装

需要安装的内容包括:

  • Node.js (版本需不低于10.13,建议使用Node.js 12.0以上版本)
  • Git
  • Hexo (前两项是安装Hexo的必要条件)

Node.js安装

首先在官网上下载 Node.js,版本根据自己喜好选择,下载后安装,安装选项随意。

安装验证方法:

cmd 窗口内输入 node -vnpm -v,如果出现版本号,那么安装成功。

1
2
3
4
5
6
# 本机示例
C:\Users\Pand>node -v
v14.16.1

C:\Users\Pand>npm -v
6.14.12

国内镜像源加速

如果没有梯子,npm 下载速度可能会很慢,可以设置国内镜像源进行加速。

1
npm config set registry https://registry.npm.taobao.org

查看 config 使用 npm config list 命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 本机示例
C:\Users\Pand>npm config list
; cli configs
metrics-registry = "https://registry.npm.taobao.org/"
scope = ""
user-agent = "npm/6.14.12 node/v14.16.1 win32 x64"

; userconfig C:\Users\Pand\.npmrc
registry = "https://registry.npm.taobao.org/" # 此行说明已经配置成功

; builtin config undefined
prefix = "C:\\Users\\Pand\\AppData\\Roaming\\npm"

; node bin location = C:\Program Files\nodejs\node.exe
; cwd = C:\Users\Pand
; HOME = C:\Users\Pand
; "npm config ls -l" to show all defaults.

Git安装

Hexo 需要通过 Git 进行版本控制,因此还要下载 Git,此处给出两个下载地址,下载后安装,安装选项随意。

安装验证方法:

cmd 窗口内输入 git --version,如果出现版本号,那么安装成功。

1
2
C:\Users\Pand>git --version
git version 2.32.0.windows.2

Hexo安装

在完成前两项安装之后,可使用 npm 安装 Hexo。

1
npm install -g hexo-cli

安装验证方法:

cmd 窗口内输入 hexo -v,出现版本信息,那么安装成功。

配置

安装 Hexo 完成后,新建一个文件夹作为博客文件夹,之后运行以下命令来新建网站:

1
2
3
hexo init folder # 此处folder为新建文件夹名称
cd folder
npm install

新建完成后,博客文件夹的目录如下:

1
2
3
4
5
6
7
8
.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes

下面介绍该目录下的文件,根据自己需求修改,进一步完成博客配置。

_config.yml

主配置文件,可以在 _config.yml 中修改大部分配置,文件中重要参数及其作用如下。

参数 描述
title 网站标题
subtitle 网站副标题
description 网站描述,用于搜索引擎检索
keywords 网站关键词,用于搜索引擎检索
author 作者名
language 网站使用的语言。中文 zh-CN,英文en
timezone 网站时区。参照 时区列表 进行设置,中国大陆地区可以使用 Asia/Shanghai
url 网址,必须以 http://https:// 开头
root 网站根目录
source_dir 资源文件夹,用来存放博客源文件
public_dir 公共文件夹,用于存放生成的站点文件
tag_dir 标签文件夹
archive_dir 归档文件夹
category_dir 分类文件夹
theme 当前主题名称

scaffolds

模板文件夹。新建文章时,Hexo 会根据 scaffold 来建立文件。

scaffolds下 draft 是新建草稿模板,post 是新建文章模板,page 是新建页面模板。

下面是我使用的 scaffold-post 示例

1
2
3
4
5
6
title: {{ title }}
date: {{ date }}
categories:
tags:
excerpt:
index_img:

source

用户资源文件夹。除 _post 文件夹外,开头命名为 _ 的文件/文件夹将被忽略。

Markdown 和 HTML 文件会被解析并放到 public 文件夹,其他文件会被拷贝过去。

theme

主题文件夹。Hexo 会根据主题来生成静态页面。

可以在 Hexo 主题官网 找到自己想要的主题并安装。一般来讲,安装主题直接下载主题包并复制到 theme 文件夹即可。

如果主题有 Github 仓库,可以直接在主题文件夹内执行 git clone 'Github网址' 下载主题仓库,并在_config.yml 文件中修改主题名称。

本博客采用的是 Fluid 主题,个人觉得比较好看、简洁,其相关链接如下

参考


基于Hexo的本地博客搭建
https://pandintelli.github.io/2022/01/09/Blog-Setup/
作者
Pand
发布于
2022年1月9日
许可协议