Hexo 博客配置自定义域名:从零开始完整指南

作为技术博主,拥有一个自定义域名是提升专业度的第一步。最近我给自己的 Hexo 博客配置了自定义域名 blog.countingstars.website,下面记录完整的配置过程。

为什么选择子域名?

很多博主会直接用根域名(如 example.com),但我选择使用子域名 blog.example.com 的原因:

  1. 更好的服务隔离:主站可以放个人介绍、项目展示,博客独立运营
  2. 便于扩展:未来可以添加 www.example.comapi.example.com 等服务
  3. 灵活的 DNS 管理:可以随时指向不同的服务器

准备工作

1. 确认域名

  • 我在阿里云注册了域名 countingstars.website
  • 确认域名已实名认证并处于正常状态

2. 确认博客部署平台

  • 博客基于 Hexo 部署在 GitHub Pages
  • 仓库地址:https://github.com/JamisonDong/JamisonDong.github.io

配置步骤

步骤一:更新 Hexo 配置文件

修改 _config.yml 中的 URL 配置:

1
2
3
4
5
# 原配置
url: https://jamisondong.github.io/

# 新配置
url: https://blog.countingstars.website/

步骤二:创建 CNAME 文件

在 Hexo 源码目录的 source/ 文件夹中创建 CNAME 文件:

1
blog.countingstars.website

这个文件会被 Hexo 自动复制到生成的静态文件中。

步骤三:配置阿里云 DNS 记录

  1. 登录阿里云控制台,进入 云解析 DNS
  2. 找到你的域名,点击”解析设置”
  3. 添加 CNAME 记录:
记录类型 主机记录 记录值 TTL
CNAME blog jamisondong.github.io 10分钟

注意:使用子域名 blog 而不是 @@ 表示根域名)。

步骤四:配置 GitHub Pages

  1. 访问仓库的 Pages 设置
  2. 在 “Custom domain” 部分输入:blog.countingstars.website
  3. 点击 “Save”,等待 GitHub 验证

步骤五:生成并部署博客

1
2
3
4
5
6
7
8
# 清理缓存
npm run clean

# 生成静态文件
npm run build

# 部署到 GitHub Pages
npm run deploy

步骤六:验证配置

等待 DNS 传播(通常需要 10-30 分钟),然后:

  1. 检查 DNS 解析

    1
    dig CNAME blog.countingstars.website

    预期输出应该包含 jamisondong.github.io

  2. 访问博客
    打开浏览器访问 https://blog.countingstars.website,确认博客正常加载

启用 HTTPS(可选但推荐)

GitHub Pages 支持自动为自定义域名生成 SSL 证书:

  1. 在 GitHub Pages 设置页面,找到 “Enforce HTTPS” 选项
  2. 等待 SSL 证书状态变为 “Enabled”(通常需要 24 小时)
  3. 勾选 “Enforce HTTPS” 强制使用 HTTPS

常见问题

Q: 域名无法访问怎么办?

检查清单

  • DNS 记录是否正确配置(类型、主机记录、记录值)
  • GitHub Pages 设置中是否添加了自定义域名
  • CNAME 文件是否在仓库的根目录
  • 使用 dignslookup 验证 DNS 解析

Q: HTTPS 无法启用?

解决方案

  1. 等待 24 小时让 SSL 证书生成
  2. 确认 DNS 记录正确且已传播完成
  3. 检查是否有多个 DNS 记录冲突

Q: 旧域名还能访问吗?

可以。GitHub Pages 会自动重定向,jamisondong.github.io 会自动跳转到 blog.countingstars.website

维护建议

  1. 域名续费:设置域名自动续费提醒,避免因过期导致服务中断
  2. SSL 证书:GitHub Pages 会自动续签,无需手动管理
  3. 定期检查:偶尔访问博客,确认服务正常
  4. 备份重要:定期备份博客源代码和配置文件

总结

配置自定义域名只需要几个简单步骤,但能显著提升博客的专业度和品牌价值。

如果你使用 Hexo + GitHub Pages,整个过程不超过 15 分钟。遇到问题时,耐心等待 DNS 传播通常就能解决。

现在,我的博客已经可以通过 https://blog.countingstars.website 访问了,你也可以去看看效果!


相关文章