这是我的GitHub仓库在gh-pages分支。 一切看起来都很好,我有index.html, CSS, JS和图片文件夹。

但是当我访问http://roine.github.com/p1时,我得到HTTP 404没有找到。

有什么解释和解决方案吗?


当前回答

我在看YT的视频。因此,当我在终端上运行该命令时,它已经将代码推到了gh-pages分支。然后我推到主分支。它给了我404错误。

然后我将分支切换到master,然后再次恢复到gh-pages,现在错误消失了。它指向index.html,即使它不在URL中。

其他回答

在我的例子中,我有名称以_开头的文件夹(如_css和_js), GH Pages根据Jekyll处理规则忽略这些文件夹。如果不使用Jekyll,解决方法是在根目录中放置一个名为.nojekyll的文件。否则,您可以从这些文件夹中删除下划线

还有另一种情况:

使用组织页(不是项目页),该组织页有一个名为<orgname>.github.io的存储库 源文档作为主分支中的标记(asciidoc) 特拉维斯CI拉源文档文件从主和推动生成的html文件到gh-pages分支

gh-pages分支使用生成的html页面进行更新。GitHub Environment选项卡提供了到组织页面的链接。点击它会出现404。

根据 https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/

具有这种类型存储库名称的用户页和组织页为 只从主分支发布

如果我理解正确的话,如果你创建的是用户或组织网站而不是项目网站,GitHub页面将不会从gh-pages分支发布。

我重命名了我的repo,使其成为Project站点而不是Organization站点,然后gh-pages分支按预期发布。

如果你使用的是Angular这样的框架,你可能需要设置基本的href路径: https://stackoverflow.com/a/54409380/1585161

使用Angular CLI: ng build——baseHref="/users/"

或者更一般地说:<base href="/users/">

还要确保图像资产以。/assets开头,而不是/assets

你的GitHub页面可以在http://roine.github.io/p1而不是http://roine.github.com/p1。

顺便说一下,您可以修改项目的描述。

这个错误的另一种变体:

我在一个教程之后建立了我的第一个Github页面,但给了文件自述。Md,在我看来,更有意义的名字:欢迎。Md。

这是一个致命的错误:

我们将使用您的README文件作为网站的索引,如果您没有 索引。Md(或index.html),与您浏览到一个 GitHub上的存储库。

从发布GitHub页面,现在像1,2,3一样简单

然后,我可以使用Repository / Settings / GitHub Pages下指定的published at链接访问我的网站页面,后面跟着welcome.html或更短的欢迎。