前言
- 如何部署Hexo请移步上篇文章
- 也是以Termux为终端,桌面端的宝子除了终端不同,其他步骤是一样的哦
准备工作
安装Git和OpenSSH
输入
pkg install git&&openssh -y等待进程跑完然后
配置Git
根据需求,选择适合自己的Git托管平台 以Github做演示
逐条输入
git config --global user.name '<username>'git config --global user.email '<useremail>'并回车,以做Git全局配置
NOTE
<username>为Github用户名,<useremail>为Github绑定邮箱
下文若出现请自行替换
配置OpenSSH
输入
ssh-keygen -t rsa -C "<useremail>"回车,并再连续三次回车,生成公钥 然后再输入
cat .ssh/id_rsa.pub查看公钥,把反出的一大长串复制下来,
然后打开SSH and GPG Keys,往下滑,点New SSH Key,照下图填写
然后点 Add SSH Key
将代码托管到Github仓库
点New Repository创建新仓库,仓库名称就按<username>.github.io来填,仓库保持公开
然后点Create Repository
初始化仓库
返回Termux,输入
cd blog切换到刚刚我们生成的博客文件夹,然后逐条输入
git initgit add .git commit -m "everything is ok"git branch -M maingit remote add origin git@github.com:<username>/<username>.github.io.git然后再输入
git push -u origin main进程跑完后,博客文件就被托管到远程仓库了
接下来就是重头戏
部署到各Pages
WARNING优缺点各不相同,请自行选择
GitHub Pages
NOTE利用GitHub Actions部署
国内容易被墙这段时间好像还挺好?
开始
我们在博客文件夹下创建依次创建
.github/workflows/pages.yml1,并填入
name: Pages
on: push: branches: - main
jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: token: ${{ secrets.GITHUB_TOKEN }} submodules: recursive - name: Use Node.js 24 # 填自己的版本号 uses: actions/setup-node@v4 with: node-version: "24.13.0" # 填自己的版本号 - name: Cache NPM dependencies uses: actions/cache@v4 with: path: node_modules key: ${{ runner.OS }}-npm-cache restore-keys: | ${{ runner.OS }}-npm-cache - name: Install Dependencies run: npm install - name: Build run: npm run build - name: Upload Pages artifact uses: actions/upload-pages-artifact@v3 with: path: ./public deploy: needs: build permissions: pages: write id-token: write environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4CAUTION代码16、19行的版本号需要填自己本地的Node.js版本号,可通过以下命令查看:
node -v
并保存,
打开仓库设置里的Pages,把Bulid and deployment下的Source从 Deploy from a branch改为GitHub Actions,
返回Termux,输入
git push --force等待推送完毕,此时我们打开仓库的Actions,当一切皆绿时,我们点击deploy下面给的地址,就能访问我们的博客啦🎉!
绑定域名
在博客文件夹内创建一个CNAME文件,将要绑定的自定义域填入,然后
git push再到你的域名管理商添加CNAME记录,值为 <username>.github.io
继续到仓库设置的Pages,在右侧Custom domain下填入前面输入的自定义域,点Save,等待下方成DNS check successful,此时访问你的自定义域是能成功访问的🎉
CloudFlare Pages
NOTE个人最推荐,后续可根据CM大佬的优选方法提升网站访问速度(前提得有域名)
开始
登录Cloudflare 仪表盘,打开计算和 AI下的Workers and Pages,点创建应用程序,再点下面的Get started
选择 导入现有的 Git 存储库,授权一下你的 Github,然后选择前面创建的仓库,再按下面的填:
npm run build #构建命令public #构建输出目录然后点保存并部署
等待他部署完成,会给一个xxxxx.pages.dev的域名,点进去也是能够访问的
绑定域名
打开项目,点自定义域—设置自定义域,跟着引导走,等到呈现活动状态就能够通过自定义域访问了
EdgeOne Pages
NOTE腾讯的玩意儿,在国内的访问速度确实不错,后续也可以通过添加
A记录优选 已备案的域名最推荐的方式
开始
登录EdgeOne,点Pages—创建项目—导入 Git 仓库,授权一下Github,然后选择前面创建的仓库,会自动匹配框架预设,我们就直接点开始部署就好了
部署完毕后会有一个 xxxxx.edgeone.xxx域名,三个小时后过期,打开后也是能够访问的
绑定域名
打开项目,点到项目设置,找到添加自定义域,跟着引导走就行了,等到DNS记录&证书都呈现已部署状态就能通过自定义域名访问了
Vercel
NOTE国内访问速度还行,后续也可以通过优选提高访问速度,但提升效果不明显,自行搜寻
开始
登录Vercel,新账号可能需要先创建团队,
点右上角的Add New…,选Project,授权一下你的Github,然后选择前面创建的仓库,会自动匹配预设,如果没有匹配请自行选择
然后点Deploy,等待一会就部署好啦,点Go to Dashboard,就能看到一个xxxxx.vercel.app的域名,打开也是能够访问的
绑定域名
点Domains旁的 ➕ 号,
然后再点Add Domain,输入你想绑定的域名,点Save或回车↩︎,再把给出的CNAME记录添加到域名管理商,耐心等待一会,直至呈现Valid Configuration就行啦
结尾
- 由于Netlify每次部署都需要花费额度(其实每个月有免费的300$),所以不做教程,大概步骤都是一样的,导入Git仓库,然后填构建命令
- 其实也可以直接用
hexo-deployer-git插件一键生成静态资源并部署到仓库,具体请看官方文档,但是我个人不推荐
Footnotes
-
先创建
.github文件夹,再在里面创建workflows文件夹,再在里面创建pages.yml文件 ↩
部分信息可能已经过时