前言
在wordpress找了很久都没有找到心仪的主题,最终还是放弃了worpress,转头奔向hexo。但是hexo的编辑模式对于我来说又实在是太复杂了,网上一顿查找发现qexo+github actions这个方法不错,但是网上的教程虽然很多,但是还是有不少坑。博主用的是服务器搭建的hexo,所以教程只针对服务器。
准备
- 搭建hexo,运行目录设置为piblic,然后把代码传到GitHub
- 服务器密钥
- GitHub的token
- 一个子域名
部署qexo
点击 Vercel一键部署,使用GitHub账号登录
选择账号,输入仓库名称,点击创建
第一次创建肯定会失败的,直接无视,点击:go to project
点击左侧的storage,进入页面之后点击Create Database创建数据库

我选择的是第一个,后面的跟着引导一步步配置即可,这里不过多赘述

配置好之后就要配置域名,否则只能翻q访问

重新部署项目

等待部署完成后,访问刚才添加的域名即可访问qexo的初始化页面
- 填 用户名 / 密码
- API 密钥留空(自动生成)

GitHub 配置(用来拉 / 推你的 Hexo 仓库):
- GitHub 地址:
https://github.com/你的用户名/你的博客仓库.git - 分支:
main(或master) - GitHub Token:生成一个 classic token,点击直达:GitHub Token
- 勾选 repo、workflow 权限,永不过期。


Vercel 配置:
- Vercel Token:在 Vercel 账号设置生成,直达
- 项目 ID:在 项目 Settings → General 里复制



配置GitHub
新建一个GitHub公共仓库用于存放编译后的资源,命名规则:你的用户名.github.io

在存放hexo的仓库创建新文件:/.github/workflows/deploy.yml
粘贴代码:
1 | name: Hexo Build & Deploy |
其中源码分支和用户名根据情况填写
修改hexo源码根目录下的_config.yml文件:
1 | deploy: |
其中GitHub密钥和源码分支和用户名根据情况填写
在服务器生成密钥
打开宝塔 → 终端
或者 SSH 连接你的服务器,执行:
1 | ssh-keygen -t ed25519 -C "github-actions" -f ~/id_ed25519 |
一路回车,不要输密码!
执行完,你的服务器 root 目录 就会生成两个文件:
id_ed25519 (私钥)
id_ed25519.pub (公钥)
查看公钥(复制它)
在服务器终端执行:
1 | cat ~/id_ed25519.pub |
会输出一段以 ssh-ed25519 开头的字符串,全部复制。
把公钥加到静态仓库(允许写入)
打开静态仓库:https://github.com/你的用户名/你的用户名.github.io
步骤:
点 Settings
左边找到 Deploy keys
点 Add deploy key
Title 填:actions
Key 粘贴你刚才复制的公钥
✅ 一定要勾:Allow write access
点 Add key
✅ 静态仓库配置完成!
五、第四步:查看私钥(复制它)
回到服务器终端执行:
1 | cat ~/id_ed25519 |
输出一大段英文,从开头到结尾全部复制。
把私钥加到hexo源码仓库
进入你的 Hexo 源码仓库
步骤:
点 Settings
左边 Secrets and variables → Actions
点 New repository secret
Name 填写:
1 | DEPLOY_KEY |
Secret 粘贴你刚才复制的私钥
点 Add secret
✅ 密钥配置完成!
后续免输入账号密钥
在宝塔 → 网站目录 → 终端 里执行:
1 | git config --global credential.helper store |
就这一行!
然后你再执行一次:
1 | cd 你存放hexo的目录 |
这次输入一次账号密钥后,以后提交和拉取GitHub代码永远不用再输
在宝塔新建计划任务
1 | 类型:Shell 脚本 |
在qexo新建文章后发布,查看GitHub的hexo仓库中的actions有没有跑通
大功告成,在hexo的世界畅游吧!