hexo部署

hexo部署

整体思路

本文使用Hexo框架,在阿里云服务器上搭建个人博客。整体思路为在本地进行Hexo安装以及平时帖子的编写,然后使用裸仓库以及Hexo的部署功能将博客部署到远程的服务器上进行访问。

本地环境

环境安装

文档

安装 Hexo 相当简单,只需要先安装下列应用程序即可:

  • Node.js (Node.js 版本需不低于 10.13,建议使用 Node.js 12.0 及以上版本)
  • Git

所有必备的应用程序安装完成后,即可使用 npm 安装 Hexo。

1
$ npm install -g hexo-cli

服务器环境配置

Step1 、安装基础软件

1
2
3
4
5
6
7
# 一次性安装所需组件
sudo apt install -y git nginx nodejs npm

# 验证安装(应显示版本号)
git --version # 需≥2.0
nginx -v # 需显示nginx/1.18.0+
node -v # 需≥v12.0

Step2、Git裸仓库配置

创建裸仓库(bare repository)
在 Git 里,“裸仓库(bare repository)”指的是只有 Git 版本库数据,没有工作区的仓库

1
2
3
4
5
6
# 进入用户主目录
cd ~

# 创建git仓库(裸仓库没有工作目录)
mkdir hexo.git && cd hexo.git
git init --bare # 出现Initialized空仓库提示即成功

创建网站根目录

1
2
# 创建网站存放目录
sudo mkdir -p /var/www/hexo

配置自动部署钩子

1
2
3
4
5
6
7
8
9
# 创建钩子文件(重要!)
nano ~/hexo.git/hooks/post-receive # 比vi更友好的编辑器

# 文件内容
#!/bin/bash
git --work-tree=/var/www/hexo --git-dir=/root/hexo.git checkout -f

# 保存方法
按Ctrl+O → 回车确认 → Ctrl+X退出

Step3. Nginx配置

创建配置文件:

1
sudo nano /etc/nginx/sites-available/hexo

文件内容:

1
2
3
4
5
6
7
8
9
server {
listen 80;
server_name domain_name your_server_ip; # 替换为你的域名和公网IP
root /var/www/hexo;

location / {
try_files $uri $uri/ =404;
}
}

启用配置:

1
2
3
4
5
6
7
8
# 创建符号链接(相当于创建快捷方式)
sudo ln -s /etc/nginx/sites-available/hexo /etc/nginx/sites-enabled/

# 测试配置语法(出现successful即正确)
sudo nginx -t

# 重启Nginx服务
sudo systemctl restart nginx

本地Hexo配置

安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

1
2
3
$ hexo init <folder>
$cd <folder>
$ npm install

初始化后,您的项目文件夹将如下所示:

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

修改_config.yml文件:

1
2
3
4
deploy:
type: git
repo: hexodeploy@your_server_ip:/home/hexodeploy/hexo.git
branch: master

安装部署插件:

1
npm install hexo-deployer-git --save

执行命令:

1
2
3
hexo clean   # 清理缓存
hexo g # 生成静态文件(generate缩写)
hexo d # 部署(deploy缩写)

最终验证

  1. 浏览器访问:https://你的服务器IP 或域名
  2. 服务器查看日志:
1
tail -f /var/log/nginx/access.log

部署效果

主题更换

参考:

https://github.com/fluid-dev/hexo-theme-fluid

如何给网站添加免费数据统计 - webfem

参考文章

hexo部署到服务器上


hexo部署
http://example.com/2025/09/14/Hexo部署/
作者
HXXYY
发布于
2025年9月14日
许可协议