如何在Github页面上修复HTTP 404?

问题描述 投票:119回答:22

Here是我在gh-pages分支上的GitHub存储库。一切都很好看,我有我的index.html,我的CSS,JS和图片文件夹。

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

任何解释和解决方案?

github github-pages
22个回答
123
投票

我只有一个提交我的所有文件。我推了一个空提交,刷新页面然后就可以了。

git commit --allow-empty -m "Trigger rebuild"
git push

2
投票

我通过删除计算机上的“username.github.io”文件夹重新执行这些步骤,包括更改索引/ html文件,让网站工作。

我的错(我认为)是我最初克隆了“https://github.com/username/username.github.io.git”而不是https://github.com/username/username.github.io(没有“.git”)


2
投票

如果你确定你的结构是正确的,只需推送一个空提交或用一些空格更新index.html文件,它就可以了!


2
投票

就我而言,上述所有建议都是正确的。我有大多数页面工作,除了少数返回404,即使markdown文件在那里,他们似乎是正确的。以下是在这些页面上为我修复的内容:

  • 在一个页面上,有一些特殊字符不属于UTF-8,我认为这就是GitHub页面无法呈现它们的原因。更新/删除这些char并推送新的提交修复它。
  • 在另一页,我发现有标题周围的撇号',我删除它们,页面内容开始显示罚款

2
投票

在index.html文件的开头添加以下内容

<!DOCTYPE html>

1
投票

在此问题出现之前我绑定了我的域名。我承诺并推动了分支gh-pages,它解决了我的问题。新提交迫使jekyll重建您的页面。


1
投票

就我而言,URL很长。所以,我猜有一个限制。我把它放到我的自定义子域,它工作。


1
投票

在我的情况下,我不得不去项目设置并启用github页面。默认为关闭


1
投票

如果您看到404即使一切正常,请尝试切换https / http。

原始问题的网址有误,通常您可以检查repo设置并找到生成网站的正确网址。

但是我已经正确设置了所有内容,并且设置页面说它已发布,然后我仍然看到了404。

感谢@Rohit Suthar的评论(尽管该评论是使用https),我将网址更改为http并且有效,然后https也工作了。


0
投票

在私人仓库中,当我第一次添加并将我的gh-pages分支推送到github时,github页面的设置会自动更改以指示gh-pages分支将被发布,但是github.io没有绿色或蓝色条网址和没有自定义域选项。

直到我将源切换到master并快速将源切换回gh-pages,它实际上使用包含已发布url的绿色条进行更新。


0
投票

转到存储库的设置部分,在源部分选择主分支,然后在刷新页面后单击保存按钮,您将能够看到页面的链接!


54
投票

就我而言,我的文件名以_(如_css_js)开头,GH Pages根据Jekyll处理规则忽略。如果您不使用Jekyll,则解决方法是将名为.nojekyll的文件放在根目录中。


0
投票

我也面临这个问题(404),根本原因是我的文件被命名为INDEX.md。我在Windows上开发并且我的本地Jekyll站点工作(因为Windows默认情况下处理文件名不区分大小写)。当推到Github时,它没有用。一旦我将INDEX.md重命名为index.md,事情就运作良好。


0
投票

又一种情况:

  • 使用具有名为<orgname>.github.io的存储库的组织页面(而不是项目页面)
  • 源文件作为master分支(asciidoc)的标记
  • Travis CI从master中提取源文档文件并将生成的html文件推送到gh-pages分支

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

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

具有此类存储库名称的用户和组织页面仅从master分支发布

如果我理解正确的话,如果您要创建gh-pagesUser站点而不是Organization站点,则不会从Project分支发布GitHub Pages。

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


0
投票

我有同样的问题..非常奇怪的问题..我的HTML在标题之后是空格

> <title>
> 
> <script>

修复后删除空间

> <title>
> <script>

46
投票

四个月前,我联系了支持人员,他们告诉我这是他们身边的问题,他们暂时修复了它(对于当前的提交)。

今天我再试一次

  1. 我在github上删除了gh-pages分支 git push origin --delete gh-pages
  2. 我在本地删除了gh-pages分支 git branch -D gh-pages
  3. 我重新初始化了git git init
  4. 我在本地重新创建了分支 git branch gh-pages
  5. 我把gh-pages分支推到了github git push origin gh-pages

工作正常,我终于可以在页面上更新我的文件。


39
投票

我在here上做了所有技巧My Fork来修复Github Page上的404页,但它仍然保持着404。

终于发现我的浏览器几乎没有将10 minutes cache保留在网络上。

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

https://username.github.io / index.html的


18
投票

在用gh-pages分支分配回购后,我遇到了同样的问题。我能够通过简单地将一个新的提交(只是index.html中的空格)推送到我的fork的gh-pages分支来修复。


14
投票

我的页面也保持着404。联系支持,他们指出网址区分大小写;解决了我的问题。


14
投票

在我的案例中,2017年8月8日

  1. 如果您的用户页面是https://github.com/mgravell,则您的repo名称必须是mgravell.github.io
  2. 在root下,创建一个文件index.html
  3. 在root下,创建一个文件夹docs,在CNAME下创建一个文件docs(注意:没有像.txt那样的扩展名,请确保你的文件系统显示扩展名)
  4. gh-pages分支是可选的,master分支就足够了

更多:查看官方文档:https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/


11
投票

如果您还没有,请在GitHub页面设置选项卡中选择一个Jekyll主题。显然this is required even if you're not using Jekyll为您的Pages网站。

GitHub settings screenshot


5
投票

等一下十分钟到一个小时。如果仍然无效,请联系github。通常这是他们最终的问题。但是,如果你赶时间,你可以尝试通过添加“?”来打开URL末尾的问号。它强制查询以搜索资源。像这样:

http://roine.github.com/p1?

© www.soinside.com 2019 - 2024. All rights reserved.