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

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

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


当前回答

还有另一种情况:

使用组织页(不是项目页),该组织页有一个名为<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分支按预期发布。

其他回答

对我来说,关键是认识到你可以通过到你的github repo中的“Actions”选项卡看到构建过程中的错误消息。点击最新的“页面构建和部署”工作流显示了阻止发布的错误消息(my _config.yml中的一个简单错误)。

如果您看到404,即使一切看起来都是正确的,尝试切换https/http。

原来的问题有错误的url,通常你可以检查回购设置,找到正确的url生成的网站。

然而,我已经正确设置了一切,设置页面说它已经发布,然后我仍然看到404。

感谢@Rohit Suthar的评论(尽管那条评论是要使用https),我把url改为http,它可以工作,然后https也可以工作。

以下操作帮助了我:

webpack构建:

Webpack output.publicPath

publicPath: './'

轻快地构建:

轻快地基础

base: './'

在我的例子中,URL相当长。所以,我想这是有限度的。我把它放在我的自定义子域,它工作。

我在我的回购上做了所有的技巧来修复Github page (https://eq19.github.io/)上的404页,但它保持了404'ing。

最后我发现我的浏览器几乎无法保持10分钟的缓存。

只需将/index.html添加到URL的末尾,它就会出现并解决这个问题。

https://username.github.io/{repoName}/index.html