如何将Hexo个人博客部署到个人云服务器上

零、准备云服务器(推荐:雨云)

已准备好云服务器可跳至 一、准备工作 继续查看教程

部署 Hexo 博客只需要一台轻量云服务器即可,新手首选雨云 - 新一代云服务提供商,性价比、易用度、稳定性都非常适合个人博客。


为什么推荐雨云

  • 价格极低:新人首月低至 9.9 元,长期用也很便宜
  • 即开即用:KVM 架构、NVMe SSD,跑 Hexo 毫无压力
  • 操作简单:可视化面板,一键重装系统、一键开端口
  • 国内 / 海外节点齐全:国内免备案可选香港 / 美国,速度稳
  • 售后友好:7 天无理由退款,新手放心试错
  • 资质齐全:工信部 ISP/IDC 资质,长期稳定可信赖

雨云服务器购买与初始化(一步一步来)

1. 注册与购买

  1. 打开雨云官网:雨云 - 新一代云服务提供商

  2. 完成注册实名认证

  3. 进入「云服务器 RCS」→ 购买云服务器

  4. 推荐配置(Hexo 专用,足够用)

    • 系统:Ubuntu 20.04 / 22.04
    • 配置:1 核 1G、1 核 2G 都行
    • 节点:国内访客多选江苏 / 浙江;想免备案选香港 / 美国
  5. 下单并记住:公网 IP、用户名(默认 root)、密码

2. 开放端口(必须做)

  1. 进入雨云控制台 → 你的服务器 → 防火墙

  2. 添加规则,放行:

    • 80 端口(HTTP)
    • 443 端口(HTTPS)
  3. 保存生效

3. 连接服务器

  • Windows:用 Xshell / FinalShell
  • Mac/Linux:直接终端 ssh root@你的服务器IP

登录成功,就可以继续后面的 Hexo 部署教程了。


这是一套本地写文章 → 一键部署到云服务器 → 公网访问的完整流程,全程复制命令即可完成,适合新手。


一、准备工作

  1. 一台云服务器(Ubuntu/CentOS 均可,开放 80/443 端口)
  2. 本地电脑已安装:Node.js、Git、Hexo
  3. 服务器已配置 SSH 登录(推荐密钥登录)

二、服务器端配置(只做一次)

1. 安装依赖

1
2
3
4
5
6
# Ubuntu/Debian
sudo apt update
sudo apt install git nginx -y

# CentOS
sudo yum install git nginx -y

2. 创建网站目录与 Git 仓库

1
2
3
4
5
6
7
# 1. 创建网站根目录 
sudo mkdir -p /var/www/hexo
# 2. 创建 Git 裸仓库
sudo mkdir -p /var/repo cd /var/repo
sudo git init --bare hexo.git
# 3. 赋权sudo chown -R $USER:$USER /var/www/hexo
sudo chown -R $USER:$USER /var/repo

3. 配置 Git 自动部署钩子(关键)

1
nano /var/repo/hexo.git/hooks/post-receive

写入以下内容(直接复制):

1
2
#!/bin/sh
git --work-tree=/var/www/hexo --git-dir=/var/repo/hexo.git checkout -f

保存退出,添加执行权限:

1
chmod +x /var/repo/hexo.git/hooks/post-receive

4. 配置 Nginx

1
sudo vim /etc/nginx/sites-available/default

找到 root 一行,修改为:
root /var/www/hexo;
index index.html;

检查配置并重启:

1
2
sudo nginx -t
sudo systemctl restart nginx

三、本地 Hexo 配置

1. 安装部署插件

进入你的 Hexo 博客根目录执行:

1
npm install hexo-deployer-git --save

2. 修改 _config.yml

打开博客根目录的 _config.yml,找到 deploy 字段,修改为:

1
2
3
4
deploy: 
type: git
repo: 服务器用户名@服务器IP:/var/repo/hexo.git
branch: master

四、一键部署(日常发布只用这一步)

1
hexo clean && hexo g -d

出现 Deploy done 即成功。


五、访问博客

  • 用 IP 直接访问:http://你的服务器IP
  • 绑定域名后:http://你的域名

六、常见问题

  1. 403/404:检查 Nginx 目录权限、路径是否正确
  2. 部署失败:检查服务器 Git 仓库权限、本地 repo 地址是否正确
  3. 无法访问:服务器安全组开放 80 端口