
Hexo博客快速部署

为什么选择Hexo+Qexo+Github+Vercel组合?
几经波折,也算是最终决定长期扎根Hexo。
博客框架、部署方式、编辑方式眼花缭乱,此处就不一一列举了。以下简述这套组合拳的优势:
- 免费。零元购,无需购买服务器,零开销(倘若你不需要自定义域名)。
- 稳定。静态网站,代码托管和部署都在第三方平台,无需个人维护,也无需占用个人服务器资源。
- 简单。无需深奥的代码知识,依葫芦画瓢。
- 注重隐私。博客代码Github仓库属性为
Private
,非所有者无法查看。 - 云托管、跨平台。部署完成后,你甚至可以在移动端打开Qxeo界面写文章,实现本地环境脱离:
- Github:私人仓库,托管源代码。
- Vercel:自动化部署,源代码变更自动触发再部署。
- Qxeo面板:进行文章统一管理、编辑、发布等(可绑定个人域名)。
- Hexo:前端界面渲染(可绑定个人域名)。
撰写至发布的整个流程概括如下:
1 | flowchart LR |
环境准备
开始前,请确保以下条件已具备:
在开始之前,请确保你已经具备以下条件:
- Git:用于版本控制和与Github交互。
- Node.js:Hexo基于Node.js。
- Github账户:用于博客代码托管。
- Vercel账户:在线代码部署平台,提供免费
万事俱备,只欠东风。让我们开始吧!
创建仓库&部署Hexo
- 登录Github和Vercel
- Vercel部署,输入仓库名称,然后点击 `Create`。
- 等待自动部署完成。
部署完成后,自带二级域名 vercel.app
,由于此域名已被污染,麻瓜是无法通过该域名直接访问部署后的Hexo博客,建议绑定自定义域名。
本地更改和配置主题
此处以Hexo-theme-redefine 为例。
建议对所有代码的更改在本地进行,使用
hexo s
预览确认后再上传源码。
安装Node.js
建议使用
pnpm
管理Node环境和模块。以下为Ubuntu环境,更多安装方式请参考官方文档。
安装过程如下:
1 | # 安装pnpm |
拉取远程模板仓库
由于hexo已安装在远程仓库项目文件中,无需全局安装。
1 | # 选择放置博客源代码的位置 |
配置主题
根据Redefine官方文档 配置 _config.yml
和 _config.redefine.yml
文件。
主题官方文档具备诸多特色,请按需配置,同时建议尽量使用Markdown通用样式,对于主题特有的Markdown渲染样式保持谨慎的态度,以免后续主题不维护或者单独想更改主题时,新主题不支持该样式。
配置完成后,预览样式:
1 | # 清除已生成的网页文件 |
无法使用hexo命令?
由于hexo安装在项目中,无法直接使用 hexo g
等命令,因此需要添加 pnpm exec
。也可以将 hexo
写进终端配置文件,比如:
1 | echo 'PATH="$PATH:./node_modules/.bin"' >> ~/.zshrc |
关闭命令行重新打开即可直接使用 hexo d
由于配置视个人喜好而定,且主题内置配置项较多,酌情选择,此处暂不赘述。
禁止使用 hexo d
命令!
该命令为手动部署方式,成功运行后会将远程仓库内的源代码文件更改为网页源码,Vercel此处不参与自动化部署,只作为pages显示。
推送远程仓库
由于自动化部署在云端进行,无需使用
hexo d
,因此本地亦无需配置ssh-key
。
1 | # 生成ssh-key,一路按enter,注意输出含有文件生成位置 |
可能涉及到的其它git命令
1 | # 检查本地是否存在main分支,若无则报错 |
当远程仓库变更后,Vercel会进行自动化部署,稍等片刻即可访问配置了新主题的Hexo博客了。
配置Qexo面板
Qexo :一款现代化的静态博客管理面板,支持Hexo。
我们可以使用Qexo作为博客的后台,实现在线管理、编辑、发布文章,提高写博客的动力和效率。
顺带一提,此文即是基于Qexo平台撰写。
由于官方文档已经足够详细,这里不再赘述。部署方式为Vercel部署。
提醒:Github仓库请依然选择Private
同样地,可以通过Vercel将自己的Qexo平台绑定二级域名,实现个性化域名访问。
Qexo支持动态更新博客文章时间,默认采用带时区后缀的时间戳,会导致我所使用的主题渲染后为UTC+0时间,但由于源码公开,可以适当修改自己仓库内时间戳的生成方式格式化时间,后续会出一篇相关文章。
疑问解答
本地仓库文件与远程仓库文件各自包含不同文件以至于无法推送
1
2
3
4
5
6# 拉取远程仓库
git fetch origin
# 合并分支,创建新的合并提交(merge commit),这里额外需要填写commit说明
git merge origin/main
# 推送至远程远程仓库
git push -u origin main
- 标题: Hexo博客快速部署
- 作者: Salt
- 创建于 : 2024-08-04 19:03:59
- 更新于 : 2024-08-07 22:55:00
- 链接: https://blog.isoland.top/posts/c97b4537/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。