配置自定义域名

在本篇博客中,我们将介绍如何使用 GitHub Actions 来实现 Hexo 博客的自动化部署,并且配置 自定义域名,确保 GitHub Pages 部署后不会丢失域名设置。


1. 配置 GitHub Actions

1.1 修改 .github/workflows/deploy.yml 文件

deploy.yml 文件中添加hexo deploy --cname <name>到下面位置:

1
2
3
4
5
6
7
8
9
10
11
12
jobs:
deploy:
steps:
- name: Deploy to GitHub Pages # 部署到 GitHub Pages
run: |
mkdir -p ~/.ssh/
echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
git config --global user.name "$GIT_NAME"
git config --global user.email "$GIT_EMAIL"
hexo deploy --cname neurowave.tech # 在这里指定域名

2. 配置自定义域名

2.1 在阿里云配置域名解析

如果你使用的是 阿里云 购买的域名,需要在 阿里云 DNS 控制台 添加解析记录。

  1. 进入 阿里云控制台公网 DNS 解析权威域名解析
  2. 选择你的域名,点击 添加记录新手引导
  3. 选择 记录类型CNAME
  4. 主机记录 选择:
    • www(用于 www.yourdomain.com
    • @(用于 yourdomain.com)。
  5. 记录值 中填写你的 GitHub Pages 地址,例如:
    1
    artintyt.github.io
  6. 点击 保存

2.2 生成 CNAME 文件

如果你的博客使用自定义域名(如 neurowave.tech),你需要在 source/ 目录下创建 CNAME 文件:

1
echo "neurowave.tech" > source/CNAME

然后提交到 master branch:

1
2
3
git add source/CNAME
git commit -m "Add CNAME file"
git push origin master

你也可以手动创建一个叫 CNAME 文件到 source/

2.3 确保 CNAME 在 Hexo 部署时不会丢失

在 Hexo 的 _config.yml 文件中,确保 deploy 部分包含 cname 和你的自定义域名:

1
2
3
4
5
6
deploy:
type: git
repo:
branch: gh-pages # 你的 GitHub Pages 分支
message: "Deploy blog updates"
cname: neurowave.tech # 自定义域名

2.4 在 GitHub Pages 启用自定义域名

  1. 进入 GitHub 仓库SettingsPages
  2. Custom domain 输入 neurowave.tech
  3. 勾选 “Enforce HTTPS”,确保 HTTPS 正常工作。
  4. 等待 GitHub 解析你的域名,通常需要几分钟。

3. 提交并触发 GitHub Actions

执行以下命令,将 deploy.yml 配置文件提交到 GitHub:

1
2
3
git add .github/workflows/deploy.yml
git commit -m "Add GitHub Actions for Hexo deployment"
git push origin master # 如果你的远程分支是 master

推送代码后,GitHub Actions 会自动执行部署。

4. 检查 GitHub Actions 是否成功

4.1 查看 Actions 运行状态

  1. 打开 GitHub 仓库。
  2. 点击 Actions 选项卡。
  3. 查看最新的 Workflow 运行记录。
  4. 如果显示绿色 ✅,说明部署成功;如果失败,则查看日志分析问题。

4.2 访问你的博客

GitHub Pages 更新可能需要几分钟,稍等后访问:

1
https://neurowave.tech

如果看到最新内容,说明部署成功!🎉

5. 本地更新博客并推送

当你本地修改博客内容后,使用以下命令提交并触发 GitHub Actions:

1
2
3
git add .
git commit -m "Update blog content"
git push origin master

然后等待 GitHub Actions 自动更新你的博客。

1
hexo clean && hexo generate && hexo deploy

6. 总结

  • 配置 GitHub Actions,让博客自动部署。
  • 创建 CNAME 文件,并确保 Hexo 部署时不会丢失自定义域名
  • 每次 git push,GitHub Actions 自动触发部署
  • GitHub Pages 自动更新,无需手动运行 hexo deploy

这样,你的 Hexo 博客就实现了 全自动化部署,并且保留自定义域名 🎉!


“觉得不错的话,给点打赏吧 ୧(๑•̀⌄•́๑)૭”

微信二维码

微信支付

支付宝二维码

支付宝支付

配置自定义域名
http://neurowave.tech/2025/02/06/1-配置自定义域名/
作者
Artin Tan
发布于
2025年2月6日
更新于
2025年2月21日