Hexo博客搭建完整指南
Hexo博客搭建完整指南
个人博客网站: https://znza.top
项目介绍
这是一个基于 Hexo 框架构建的个人博客网站,使用 NexT 主题的 Gemini 风格。主要关注 AI、计算机视觉和机器学习等技术领域。
环境配置
前提条件
- Node.js (推荐使用 v10.0 以上版本)
- Git
安装步骤
安装 Hexo 命令行工具
1
npm install -g hexo-cli
初始化项目(在空目录中)
1
2
3
4
5# 如果你是在全新环境中设置
mkdir blog-folder
cd blog-folder
hexo init .
npm install如果使用当前仓库
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16# 克隆仓库
git clone git://github.com/wangqiqi/wangqiqi.github.io.git
cd wangqiqi.github.io
# 安装依赖 (确保你已经有 package.json 文件)
npm install
# 如果没有 package.json 文件,需要初始化一个新的 Hexo 项目并迁移内容
# 1. 在别处创建一个新的 Hexo 项目
mkdir temp_hexo
cd temp_hexo
hexo init .
npm install
# 2. 复制必要的配置文件到原项目
# 将 package.json, package-lock.json, _config.yml, scaffolds/ 和 themes/ 等复制到原项目
主题安装
安装 NexT 主题
1
2
3
4
5
6
7
8# 方法一:使用 git clone (可能会遇到网络问题)
git clone https://github.com/theme-next/hexo-theme-next themes/next
# 方法二:使用 npm 安装 (推荐)
npm install hexo-theme-next --save
# 方法三:如果使用 npm 安装但主题不生效,需要复制到 themes 目录
xcopy /E /I /Y node_modules\hexo-theme-next themes\next启用主题(在 _config.yml 中修改)
1
theme: next
安装必要的插件
1
2
3npm install hexo-generator-searchdb --save # 搜索功能
npm install hexo-generator-feed --save # RSS 订阅
npm install hexo-deployer-git --save # Git 部署
本地开发
启动本地服务器
1 | hexo server |
启动后可通过 http://localhost:4000
访问本地预览。
排查本地预览问题
如果出现 “No layout” 警告或者页面样式不正确:
确认主题是否正确安装到 themes/next 目录
1
dir themes\next
清除缓存并重新生成
1
hexo clean && hexo g && hexo s
检查 _config.yml 中主题设置是否正确
1
theme: next # 必须与 themes 目录下的主题文件夹名称一致
创建新文章
1 | # 创建名为 "article-title" 的新文章 |
这将在 source/_posts
目录下创建一个名为 article-title.md
的新文件。
文章格式
文章头部使用 YAML front-matter 配置文章属性:
1 | --- |
构建与部署
配置部署
编辑 _config.yml
,配置部署信息:
1 | deploy: |
生成静态文件
1 | hexo generate |
部署到 GitHub Pages
1 | hexo deploy |
也可以生成并部署一步完成:
1 | hexo generate --deploy |
部署问题排查
如果遇到部署问题:
确认 hexo-deployer-git 插件已安装
1
npm install hexo-deployer-git --save
检查 GitHub 仓库配置是否正确
检查 Git 用户凭证是否正确设置
主题定制
当前使用的是 NexT 主题的 Gemini 风格,主题配置文件位于根目录的 _config.yml
和主题目录的 _config.yml
(或使用根目录的 _config.next.yml
)。
更换主题风格
NexT 主题提供了几种不同的风格:
- Muse - 默认方案,黑白主调
- Mist - Muse 的紧凑版本
- Pisces - 双栏布局
- Gemini - Pisces 的增强版,现在使用的风格
可在主题配置文件中修改:
1 | # Schemes |
推荐自定义部分
- 网站图标:替换
source/images/
目录下的图标文件 - 代码高亮风格:调整
_config.yml
中的 highlight 部分1
2
3
4
5
6
7
8
9
10
11
12highlight:
enable: true
line_number: true
auto_detect: false
tab_replace: ''
wrap: true
hljs: true
prismjs:
enable: false
preprocess: true
line_number: true
tab_replace: '' - 添加自定义页面:
1
2
3hexo new page "about"
hexo new page "categories"
hexo new page "tags" - 集成第三方服务:如 Valine 评论系统、百度/谷歌统计等
写作风格建议
使用 Markdown:熟悉 Markdown 语法,高效编写文章
图文结合:适当添加图片、代码示例增加可读性
1
2
3
4
5
6
代码示例:
```python
def hello_world():
print("Hello, World!")段落结构:注意段落划分,使用标题层级组织内容
代码展示:使用代码块标注语言类型以获得语法高亮
常见问题
主题配置无效
确保你的主题配置文件正确:
- 使用独立主题配置文件:将主题目录下的
_config.yml
复制到站点根目录,并重命名为_config.next.yml
- 使用根目录和主题目录的配置文件配合
文章不显示
检查文章 front-matter 是否正确,特别是日期格式。
更新主题
更新 NexT 主题:
1 | cd themes/next |
清除缓存
遇到异常情况,可尝试清除缓存:
1 | hexo clean |
Windows 特有问题
- 路径问题:Windows 使用反斜杠
\
,但配置中应使用正斜杠/
- 编码问题:确保所有文件使用 UTF-8 编码,避免中文显示乱码
- 权限问题:某些操作可能需要管理员权限
图片资源管理
开启文章资源文件夹功能后,可以为每篇文章创建同名资源文件夹:
- 确保
_config.yml
中设置了post_asset_folder: true
- 创建文章时会自动生成同名文件夹:
hexo new post "my-post"
- 在文章中引用图片:

或使用{% asset_img image.jpg 描述 %}
参考资源
- Hexo 文档
- NexT 主题文档
- Markdown 基本语法
- Hexo 部署到 GitHub Pages
- NexT 主题配置
日常工作流程
目录结构说明
博客项目的核心是 source
目录,它包含了所有需要维护的内容:
1 | source/ |
写作和更新流程
写新文章:
1
2
3
4
5
6
7
8
9# 1. 创建新文章
hexo new post "文章标题"
# 2. 编辑文章(在 source/_posts/文章标题.md)
# 3. 如果文章包含图片等资源:
# - 创建同名文件夹:source/_posts/文章标题/
# - 将图片等资源放入该文件夹
# - 在文章中使用相对路径引用:添加全局图片:
- 将图片放入
source/images/
目录 - 在文章中使用绝对路径引用:

- 将图片放入
修改页面:
- 关于页面:编辑
source/about/index.md
- 标签页面:编辑
source/tags/index.md
- 分类页面:编辑
source/categories/index.md
- 关于页面:编辑
本地预览:
1
2
3
4
5
6
7
8# 清理缓存并重新生成
hexo clean
# 生成静态文件
hexo g
# 启动本地服务器
hexo s访问 http://localhost:4000 预览效果
部署网站:
1
2
3
4
5# 部署到 GitHub Pages
hexo d
# 或者一键生成并部署
hexo g -d
维护建议
定期备份:
- 定期提交到 Git 仓库
- 备份
source
目录最重要,它包含所有原始内容
图片管理:
- 文章配图放在文章同名文件夹中
- 全局图片(如头像)放在
source/images/
中 - 压缩图片以优化加载速度
定期清理:
- 可以安全删除的临时文件:
.deploy_git/
(部署缓存)public/
(生成的静态文件)db.json
(数据库缓存)
- 这些文件会在需要时自动重新生成
- 可以安全删除的临时文件:
版本控制:
- 主要关注
source
目录的变更 - 可以忽略的文件已在
.gitignore
中配置
- 主要关注
常见问题解决
部署失败:
- 检查网络连接
- 确认 GitHub 仓库设置正确
- 验证 Git 凭证是否有效
图片显示问题:
- 检查图片路径是否正确
- 区分相对路径和绝对路径的使用场景
- 确保图片已经提交到正确的目录
预览异常:
- 使用
hexo clean
清理缓存 - 重新生成静态文件
- 检查主题配置是否正确
- 使用