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

Github Pages+Namecheap:主域名重定向至子域名问题求助

解决Github Pages主域名重定向到子域名的问题及CNAME文件疑问

一、主域名example.com重定向到blog.example.com的正确配置步骤

  • 确认blog.example.com的CNAME配置:在Namecheap DNS设置中,主机记录填blog,记录类型选CNAME,值填example.github.io.(注意末尾的英文句点,部分DNS服务商要求添加以确保解析正确),TTL选择自动或5分钟加速生效。这部分你当前的配置是对的,确保已验证通过。

  • 用Namecheap URL重定向实现主域名跳转:

    • 不要用CNAME记录指向blog.example.com(Github Pages不支持主域名的CNAME绑定,因为主域名需要保留SOA/NS等核心记录,CNAME会覆盖这些导致解析异常);
    • 在Namecheap DNS设置中添加URL Redirect (301)记录:主机记录填@,目标URL填https://blog.example.com(必须带完整协议https://,否则可能导致超时或跳转错误),重定向类型选Unmasked(避免iframe嵌套带来的兼容性问题);
    • 之前超时大概率是因为没指定完整协议,或者DNS缓存未刷新,建议将TTL设为5分钟,等待10-15分钟后再测试。
  • 关键注意事项:不要将example.com添加到Github Pages的自定义域设置中——一个Github Pages站点只能绑定一个主自定义域(及其www子域),添加后会与blog.example.com冲突,导致其中一个无法正常解析。

二、Github仓库中CNAME文件的作用

  • 是否必需:是的,CNAME文件是Github Pages识别站点绑定域名的核心标识之一。当你在仓库Settings > Pages中设置自定义域后,Github会自动在仓库根目录生成或更新该文件,内容为你设置的域名(如blog.example.com)。
  • 手动修改无效的原因:Github会自动维护这个文件,如果你手动修改或删除,下次保存Pages设置时,系统会自动覆盖回你在Settings中配置的域名。因此,修改自定义域必须通过Settings页面操作,而非直接编辑CNAME文件。

内容的提问来源于stack exchange,提问作者Michael Tidwell

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 21:15:36