You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复GitHub Pages自定义域名解析失败(NotServedByPagesError)

GitHub Pages项目站点自定义域名配置问题解决

核心问题:项目站点与用户主页站点的配置差异

你的站点是项目站点(https://xharuke.github.io/haruke/),而非用户主页站点(https://xharuke.github.io),这确实是配置出错的核心原因之一,两者的自定义域名规则完全不同:

  • 用户主页站点:可绑定顶级域名或子域名,支持A/CNAME记录
  • 项目站点:仅支持绑定子域名,且只能用CNAME记录,不能用A记录

针对性修复步骤

1. 修正域名注册商(Freenom)的DNS设置

  • 删除所有已添加的A记录(项目站点不需要A记录)
  • 添加一条CNAME记录:
    • 主机记录:填写你想用的子域名前缀(比如www、blog等)
    • 记录值:填xharuke.github.io(不要加/haruke/后缀)
    • TTL保持默认即可

2. 修正GitHub仓库的Pages设置

  • 进入haruke仓库的「Settings」→「Pages」页面
  • 在「Custom domain」栏填写你设置的完整子域名(比如www.your-freenom-domain.tld)
  • 暂时不要勾选「Enforce HTTPS」,等DNS解析完全生效后再开启(否则可能触发证书错误)
  • 确认「Source」部分的分支和目录正确:比如选择main分支,目录选/(root)或/docs(根据你的站点生成工具而定,Jekyll默认用根目录)

3. 修复空白页问题

  • 检查仓库根目录的CNAME文件:GitHub会自动生成该文件,内容应为你填写的自定义域名,不要手动修改或删除
  • 本地验证站点生成结果:如果用静态站点生成器(如Jekyll),先在本地执行构建命令(比如jekyll build),确保生成的_site目录下有完整的HTML文件,再推送到仓库
  • 查看部署日志:在「Settings」→「Pages」→「Deployment history」中查看最近的部署记录,排查是否有构建失败、文件路径错误等问题

4. 等待DNS解析生效

Freenom的DNS解析通常需要10-30分钟才能全网生效,可通过命令nslookup 你的子域名验证解析状态,确认返回的CNAME目标为xharuke.github.io即可。

内容的提问来源于stack exchange,提问作者Haruke Sensei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 15:10:34