??????Excavator? 2025-12-11 13:56 采纳率: 66.7%
浏览 4

GithubPage的诡异问题

我至今也无法理解的诡异机制,翻遍Github平台的官方文档也没有看到关于这个机制的解释,真的很奇怪

假如你是Github用户“tiger”,现有两个及以上github page仓库

1.第一仓库名为 tiger.github.io ,默认网址就是 https://tiger.github.io ,如果设定自定义域名且在域名控制台设置“解析记录: 我是域名.com 指向=> tiger.github.io ”,则可以使用 我是域名.com 访问该网站(这一步很正常对吧)

2.第二仓库名为fun,默认网址就是 tiger.github.io/fun
此时要给第二仓库设定自定义域名 fun.我是域名.com
域名控制台的CNAME记录无法填写包含斜线的格式。但是你可以解析目标写 fun.github.io ,也就是在域名控制台设置“解析记录: fun.我是域名.com 指向=> fun.github.io”,就可以使用 fun.我是域名.com 访问第二仓库的网页,使用fun.github.io却显示404

(疑点1:为什么这条解析记录没有被当成用户名为fun的Github用户的第一仓库?)
(疑点2:为什么 “CNAME记录:fun.我是域名.com指向=>fun.github.io” 的实际效果是指向tiger.github.io/fun来显示fun仓库的内容,看起来毫无关系,但是它确实实现了)
(疑点3:使用fun.github.io访问为什么不会像第一仓库那样自动把地址栏变成fun.我是域名.com并正确显示页面)
(疑点4:如果Github用户“fun”也部署了个人网站 fun.github.io ,并且在仓库设置里设定了 fun.我是域名.com DNS应该怎么办?解析谁?浏览器应该显示谁的页面)

  • 写回答

1条回答 默认 最新

  • 阿里嘎多学长 2025-12-11 14:00
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题理解

    你遇到了一个奇怪的问题,关于GitHub Pages的机制。你有两个以上的GitHub Page仓库,一个名为tiger.gith。你想了解GitHub Pages的诡异机制,但官方文档没有提供相关信息。

    问题分析

    GitHub Pages是一个静态网站托管服务,允许你将静态网站托管在GitHub上。每个仓库可以有一个默认分支(通常是gh-pages),用于托管静态网站。

    问题解决方案

    可能的原因包括:

    1. 分支问题:确保你的GitHub Page仓库的默认分支是gh-pages,而不是master
    2. 配置问题:检查你的CNAME文件和404.html文件是否正确配置。
    3. 缓存问题:尝试清除缓存,重新构建和发布你的网站。

    核心代码

    如果你想检查你的GitHub Page仓库的默认分支,可以使用以下命令:

    git branch -a
    

    如果你想检查你的CNAME文件和404.html文件,可以使用以下命令:

    cat CNAME
    cat 404.html
    

    如果你想清除缓存和重新构建你的网站,可以使用以下命令:

    npm run build
    npm run deploy
    

    请注意,这些命令是基于Node.js和npm的,具体命令可能会有所不同。

    评论

报告相同问题?

问题事件

  • 修改了问题 12月11日
  • 修改了问题 12月11日
  • 修改了问题 12月11日
  • 创建了问题 12月11日