Hexo是一款快速、简洁且高效的开源静态博客生成器,基于Node.js开发,以MIT协议开源。Hexo诞生于2012年,由台湾开发者Tommy Chen创建,是全球最流行的静态博客生成器之一。Hexo支持Markdown写作,一键生成静态HTML文件,可部署到GitHub Pages、Vercel、Netlify、自有服务器等任何静态托管平台。Hexo拥有丰富的主题和插件生态,生成速度极快,适合个人博客、技术博客、文档站点。
核心优势:生成速度极快(支持增量生成)、Markdown写作体验好、主题插件丰富、完全静态(无需数据库、无需服务器端运行)、部署灵活、成本低(可免费托管)、安全性高(纯静态无漏洞)、SEO友好、版本管理友好(Git)。Hexo是技术博主和开发者最喜爱的博客系统之一。
环境要求
- 操作系统:Windows / macOS / Linux
- Node.js版本:Node.js 14.x+(推荐Node.js 18.x/20.x LTS)
- npm版本:npm 6.x+
- Git:用于版本管理和部署(必需)
- 内存:最低256MB,推荐512MB以上
- 磁盘:至少500MB可用空间
- 文本编辑器:VS Code / Sublime Text / Typora等(推荐)
安装教程
步骤1:安装Node.js和Git
Windows:从Node.js官网(https://nodejs.org)下载LTS版本安装,从Git官网(https://git-scm.com)下载安装。
Linux(Ubuntu/Debian):
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt install -y nodejs git
node --version
npm --version
git --version
步骤2:安装Hexo CLI
npm install -g hexo-cli
hexo --version
步骤3:初始化Hexo博客
hexo init my-blog
cd my-blog
npm install
这会创建一个标准的Hexo博客结构,包含默认主题(landscape)和示例文章。
步骤4:本地预览
hexo server
访问 http://localhost:4000 即可看到博客首页。按Ctrl+C停止服务器。
步骤5:配置博客信息
编辑博客根目录下的 _config.yml 文件:
# Site
title: 我的博客
subtitle: '分享技术与生活'
description: '这是一个基于Hexo的个人博客'
keywords: 博客,技术,Hexo
author: 你的名字
language: zh-CN
timezone: 'Asia/Shanghai'
# URL
url: https://yourdomain.com
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:
# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: archives
category_dir: categories
# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link:
enable: true # Open external links in new tab
field: site # Apply to the whole site
exclude: ''
filename_case: 0
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
syntax_highlighter: highlight.js
highlight:
line_number: true
auto_detect: false
tab_replace: ''
wrap: true
hljs: false
prismjs:
preprocess: true
line_number: true
tab_replace: ''
步骤6:撰写文章
hexo new "我的第一篇文章"
这会在 source/_posts/ 目录下创建一个Markdown文件。编辑该文件,使用Markdown语法撰写内容。文章头部的Front Matter用于设置标题、日期、分类、标签等:
---
title: 我的第一篇文章
date: 2026-09-12 18:00:00
categories: 技术
tags:
- Hexo
- 博客
---
这里是文章正文,使用Markdown语法。
## 二级标题
正文内容...
步骤7:生成静态文件
hexo clean
hexo generate
# 或简写
hexo g
生成的静态文件会保存在 public/ 目录下。
步骤8:部署到GitHub Pages
8.1 创建GitHub仓库
在GitHub创建一个名为 你的用户名.github.io 的仓库(必须是public)。
8.2 安装部署插件
npm install hexo-deployer-git --save
8.3 配置部署信息
在 _config.yml 中添加:
deploy:
type: git
repo: https://github.com/你的用户名/你的用户名.github.io.git
branch: main
8.4 部署
hexo deploy
# 或简写
hexo d
部署完成后,访问 https://你的用户名.github.io 即可看到博客。
步骤9:部署到自有服务器(可选)
将 public/ 目录下的所有文件上传到服务器的网站根目录即可。Hexo生成的是纯静态文件,无需PHP、数据库等环境。
# 使用rsync同步到服务器
rsync -avz --delete public/ user@yourserver:/www/wwwroot/yourdomain.com/
主题安装与配置
安装热门主题(以Next主题为例)
cd my-blog
git clone https://github.com/next-theme/hexo-theme-next themes/next
在 _config.yml 中修改主题:
theme: next
复制主题配置文件:
cp themes/next/_config.yml _config.next.yml
编辑 _config.next.yml 自定义主题设置。
常用插件推荐
- hexo-deployer-git:Git部署插件
- hexo-asset-image:文章图片管理
- hexo-generator-sitemap:生成sitemap.xml
- hexo-generator-feed:生成RSS订阅
- hexo-wordcount:文章字数统计
- hexo-blog-encrypt:文章加密
- hexo-algoliasearch:站内搜索
服务器配置建议(自有服务器部署)
- Nginx配置纯静态站点,无需PHP/MySQL
- 启用gzip压缩,配置静态资源缓存
- 配置HTTPS(使用Let’s Encrypt免费证书)
- 设置404页面
- 配置缓存策略:HTML短缓存,静态资源长缓存
- 使用CDN加速静态资源
- 定期使用
hexo g重新生成并部署
Windows环境安装
Windows下安装步骤:
- 安装所需运行环境(Node.js/Go等),从官网下载安装包双击安装
- 安装Git for Windows(https://git-scm.com/download/win)
- 打开Git Bash或命令提示符,执行与Linux相同的安装命令
- 在本地完成站点配置和文章编写
- 执行生成命令,将生成的静态文件部署到服务器
宝塔面板部署
静态站点部署到宝塔面板非常简单:
- 安装宝塔面板并配置Nginx环境
- 点击”网站” → “添加站点”,填写域名,PHP版本选择”纯静态”
- 在本地执行生成命令,生成静态文件到public目录
- 将public目录下的所有文件上传到网站根目录(/www/wwwroot/你的域名)
- 配置Nginx:开启gzip压缩,设置静态资源缓存
- 配置SSL证书(宝塔面板一键部署Let’s Encrypt免费证书)
- 可选:配置GitHub Actions或Webhook实现自动部署
静态站点无需数据库和PHP环境,服务器资源占用极低,安全性高,访问速度快。
常见问题
Q:hexo server启动后无法访问?
A:检查4000端口是否被占用,可指定其他端口:hexo server -p 5000。检查防火墙是否开放端口。
Q:部署到GitHub Pages后样式丢失?
A:检查_config.yml中的url和root配置是否正确。如果部署到子目录,需要设置root为子目录路径。
Q:文章中图片不显示?
A:安装hexo-asset-image插件,在文章同级目录创建同名文件夹存放图片,使用引用。
Q:Hexo和WordPress怎么选?
A:追求轻量、免费、静态、安全选Hexo;需要动态功能、评论、后台编辑选WordPress。技术博客和个人博客推荐Hexo,综合型网站推荐WordPress。
Q:如何更换域名?
A:修改_config.yml中的url为新域名,重新生成并部署。在GitHub Pages仓库设置中配置自定义域名,并添加CNAME文件到source目录。
官方网址
官方网站:https://hexo.io