搭建网站

搭建 Hexo 博客,快速简洁高效,零成本搭建个人博客:Hexo + GitHub Pages + Cloudflare Pages 完整指南

本文详细介绍了如何使用 Hexo 框架搭建一个个人博客,并将其部署到 GitHub Pages 和 Cloudflare Pages 上。主要内容包括:

  • 环境准备:安装 Node.js 和 Git
  • 配置 Git 和 GitHub:设置 SSH 密钥,创建 GitHub 仓库
  • 初始化 Hexo 项目:安装 Hexo,创建新博客
  • 部署到 GitHub Pages:配置部署设置,推送静态文件
  • 部署到 Cloudflare Pages:连接 GitHub 仓库,自动部署
  • 基本使用方法:创建新文章,本地预览,发布更新

这个教程适合那些想要快速搭建个人博客,但又不想花费太多成本的人。通过使用 Hexo、GitHub 和 Cloudflare 的免费服务,您可以轻松创建一个高效、简洁的博客网站。


1. 事前准备

  1. 域名(非必须,你也可以使用免费域名,或者 GitHub.ioPages.dev 分配的域名也可以)
  2. GitHub(必须,你需要注册一个 GitHub 帐号)
  3. Cloudflare(非必须,你需要注册一个 Cloudflare 帐号,这样你就可以将博客部署在 CF 的 CDN 里加速,但是你也可以直接使用 GitHub.io 分配的域名)

2. 软件支持

  1. Node(必须)
  2. Git(必须)
  3. VSCode(非必须,这是一款轻量型的代码编辑器,可以帮助你养成一个很好的编程习惯)

2.1. 安装 Node

  1. 打开 Node 官网,下载和自己系统相配的 Node 安装程序,否则会出现安装问题。下载地址:https://nodejs.org/en
  2. 下载后安装,安装目录可以使用默认目录 C:/Program Files/nodejs/
  3. 安装完成后,检查是否安装成功。在键盘按下 Win + R 键,输入 CMD,然后回车,打开 CMD 窗口,执行 node -v 命令。看到版本信息,则说明安装成功。
    5ca2f549a4489064d3444.jpg
  4. 修改 npm 源。npm 下载各种模块时默认从国外服务器下载,速度较慢,建议配置成华为云镜像源。打开 CMD 窗口,运行如下命令:
1
npm config set registry https://mirrors.huaweicloud.com/repository/npm/

2.2. 安装 Git

  1. 进入官网下载适合当前系统的 Git:https://git-scm.com/downloads
  2. 下载后安装 Git 即可,安装目录最好使用默认目录 C:/Program Files/Git
  3. 点击电脑左下角开始菜单,即可看见 Git CMDGit BashGit GUI
  • Git CMD 是 Windows 命令行的指令风格。
  • Git Bash 是 Linux 系统的指令风格(建议使用)。
  • Git GUI 是图形化界面(新手学习不建议使用)。

3. 配置 Git 密钥并连接至 GitHub

常用 Git 命令:

1
2
3
git config -l              # 查看所有配置
git config --system --list # 查看系统配置
git config --global --list # 查看用户(全局)配置

f403664b22ad3488a5fb4.jpg

3.1. 配置用户名和邮箱

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

通过 git config -l 检查是否配置成功。

67dca39142021e2214e2b.jpg

3.2. 配置公钥连接 GitHub

执行以下命令生成 SSH 公钥,此公钥用于你的计算机连接 GitHub:

1
ssh-keygen -t rsa -C "你的邮箱"

提示 Enter file in which to save the key 时直接一路回车即可,新手小白不推荐设置密钥。

45d70737c64caeb4393ad.jpg

之后打开 C 盘下用户文件夹中的 .ssh 文件夹,会看到以下文件:
40bd636f749347666f9f7.jpg

  • id_rsa:私钥
  • id_rsa.pub:公钥

用记事本打开上述文件中的公钥 id_rsa.pub,复制里面的内容,然后开始在 GitHub 中配置 SSH 密钥。

0086246f3ccc703b9035e.jpg

将 SSH KEY 配置到 GitHub

进入 GitHub,点击右上角头像,选择 Settings。进入设置页后选择 SSH and GPG keys,名字随便起,公钥填到 Key 那一栏。

75fc281237bfc6751a295.jpg

993edae3bbca9489dc156.jpg

fa8a7628c285e6be5c0a4.png

f3fa79cf3d639ef2d5bcb.png

测试连接,输入以下命令:

1
ssh -T [email protected]

第一次连接会提示 Are you sure you want to continue connecting (yes/no/[fingerprint])?,输入 yes 即可。

faa0077eeab8c82f1de9e.png

出现连接到账户的信息,说明已经大功告成,至此完成了环境准备工作。

faa0077eeab8c82f1de9e.png

3.3. 创建 GitHub.io 仓库

  1. 点击右上角的 + 按钮,选择 New repository,创建一个 <用户名>.github.io 的仓库。
  2. 仓库名字的格式必须为 <用户名>.github.io(注意:前缀必须为用户名,此为预览博客需要,后期可修改仓库名)。
  3. 可见性必须选择 Public,方便第一次部署检查问题,点击 Create repository 进行创建即可。

3d9274644460cd1ffeb26.png


4. 初始化 Hexo 博客

创建一个文件夹来保存博客源码(这里选择的路径为 D:/Hexo-Blog),在文件夹内右键鼠标,选择 Open Git Bash here

f78e04406dc803d610538.png

在 Git Bash 输入如下命令安装 Hexo:

1
npm install -g hexo-cli && hexo -v

808bff9b7ab5b13fcd200.png

安装完后输入 hexo -v 验证是否安装成功。

17349517f78516f7ac8ff.png

初始化 Hexo 项目并安装相关依赖:

1
2
3
hexo init blog-demo
cd blog-demo
npm i

1c130d7beed537111d448.png

初始化项目后,blog-demo 有如下结构:

74128294708705e22e188.png

  • node_modules:依赖包
  • scaffolds:生成文章的一些模板
  • source:用来存放你的文章
  • themes:主题
  • .npmignore:发布时忽略的文件(可忽略)
  • _config.landscape.yml:主题的配置文件
  • _config.yml:博客的配置文件
  • package.json:项目名称、描述、版本、运行和开发等信息

输入以下命令启动项目:

1
hexo cl && hexo s

e8c930919bb49270bde5a.png

打开浏览器,输入地址 http://localhost:4000/。看到下面的效果,说明你的博客已经构建成功了。

e285037815104f68f4514.jpg


5. 将静态博客挂载到 GitHub Pages

5.1. 安装 hexo-deployer-git

1
npm install hexo-deployer-git --save

5.2. 修改 _config.yml 文件

blog-demo 目录下的 _config.yml,就是整个 Hexo 框架的配置文件,可以在里面修改大部分配置。详细可参考官方的配置描述

修改最后一行的配置,将 repository 修改为你自己的 GitHub 项目地址,还有分支要改为 main,代表主分支(注意缩进)。

1
2
3
4
deploy:
type: git
repository: [email protected]:cmliussss2024/cmliussss2024.github.io.git
branch: main

5.3. 部署到 GitHub

修改好配置后,运行如下命令,将代码部署到 GitHub(Hexo 三连)。

Git Bash 终端:

1
hexo clean && hexo generate && hexo deploy

VSCode 终端:

1
hexo cl; hexo g; hexo d
  • hexo clean:删除之前生成的文件,可以用 hexo cl 缩写。
  • hexo generate:生成静态文章,可以用 hexo g 缩写。
  • hexo deploy:部署文章,可以用 hexo d 缩写。

18b052b831896bf00cfc4.jpg

注意:deploy 时可能要你输入 username 和 password。

如果出现 Deploy done,则说明部署成功了。

93a5d61648491a5278556.jpg

稍等两分钟,打开浏览器访问他分配给你的链接,这时候我们就可以看到博客内容了。

e285037815104f68f4514.jpg


6. 将静态博客挂载到 Cloudflare Pages

Workers 和 Pages 中选择 Pages 的 连接到 Git

b3eae4e84c4c7c31af665.jpg

440581264cb313ed77e75.jpg

然后登录你 Blog 仓库对应的 GitHub 帐号。

733c0a673bb66670b7ca1.jpg

8fb282e32991167a98f57.jpg

点击 保存并部署 后等待部署完成即可。

60cca5e2200e260327227.jpg

提示“成功!您的项目已部署到以下区域:全球”后,浏览器访问他给你的域名,这时候我们就可以看到博客内容了。

0f2a697243725c6fa2ab8.jpg

这时你也就可以将你的 <用户名>.github.io 仓库设置为 Private 私库了。

如果你有自己的域名,可以在这里绑定自己的自定义域。

2c9ce4b9b67c09376bb91.jpg


如何使用

新建一篇博文

1
hexo new 这是一篇新的博文

然后用文本编辑器去编辑 _posts/这是一篇新的博文.md 里的内容即可,注意要使用 Markdown 格式书写。

详细使用方法可以查阅 Hexo 写作官方文档

本地预览

编辑完文章并保存后,可以使用如下命令生成本地页面,在 http://localhost:4000/ 进行预览。

Git Bash 终端:

1
hexo cl && hexo s

VSCode 终端:

1
hexo cl; hexo s

推送至 GitHub 仓库

确认无误后,使用以下命令将本地文章推送至 GitHub 仓库。

Git Bash 终端:

1
hexo cl && hexo g && hexo d

VSCode 终端:

1
hexo cl; hexo g; hexo d

下一期会讲讲进阶的使用方法——主题美化。


VSCode 终端首次执行报错

使用管理员身份打开 PowerShell,输入以下命令:

1
Set-ExecutionPolicy RemoteSigned