Here是gh-pages
分支上的GitHub存储库。
一切看起来都不错,我有index.html
,我的CSS,JS和图片文件夹。
但是当我访问http://roine.github.com/p1时,我找不到HTTP 404。
任何解释和解决方案?
答案 0 :(得分:118)
我只有一次提交我的所有文件。我推了一个空提交,刷新页面然后就可以了。
git commit --allow-empty -m "Trigger rebuild"
git push
答案 1 :(得分:52)
就我而言,我的文件名以reviewObject
开头(如_
和_css
),GH Pages根据Jekyll处理规则忽略。如果您不使用Jekyll,解决方法是将名为_js
的文件放在根目录中。
答案 2 :(得分:46)
四个月前,我联系了支持人员,他们告诉我这是他们身边的问题,他们暂时修复了它(对于当前的提交)。
今天我又试了一次
我删除了github上的gh-pages分支
git push origin --delete gh-pages
我删除了本地
上的gh-pages分支 git branch -D gh-pages
我重新初始化git
git init
我在本地
重新创建了分支 git branch gh-pages
我将gh-pages分支推送到github
git push origin gh-pages
工作正常,我终于可以在页面上更新我的文件了。
答案 3 :(得分:34)
我在here上完成了所有技巧My Fork以修复Github Page上的第404页,但它仍保留了404。
最终发现我的浏览器几乎没有将10 minutes cache保留在网络上。
只需将/index.html
添加到网址末尾即可显示并解决问题。
https://username.github.io
的 /index.html 强>
答案 4 :(得分:18)
在使用gh-pages
分支分配回购后,我遇到了同样的问题。我能够通过简单地将新提交(只是index.html
中的空格)推送到我的fork的gh-pages
分支来修复。
答案 5 :(得分:14)
我的网页也保持着404。联系支持,他们指出网址区分大小写;解决了我的问题。
答案 6 :(得分:13)
我的案例 8 / Aug / 2017
在root下,创建一个文件index.html
在root下,创建一个文件夹docs
,创建一个文件
CNAME
下的docs
(注意:没有扩展名,例如.txt,请确保您的文件
系统显示扩展名)
gh-pages
分支是可选的,master
分支就足够了
更多:查看官方文档:https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/
答案 7 :(得分:10)
就我而言,浏览器具有我应用的先前缓存版本。为避免获取缓存版本,请使用随机查询字符串访问您的 url:
https://{{your-username}}.github.io/{{your-repository}}?randomquery
答案 8 :(得分:6)
如果还没有,请在GitHub Pages设置选项卡中选择一个Jekyll主题。显然this is required even if you're not using Jekyll是您的Pages网站。
答案 9 :(得分:3)
只需等待大约十分钟到一小时。如果仍然无法正常工作,请联系github。通常这是他们的问题所在。 但是,如果您很着急,可以尝试通过添加“?”来打开。 URL末尾的问号。它强制查询搜索资源。像这样:
答案 10 :(得分:2)
我在typedocs中遇到了这个确切的问题。 README.md可以工作,但是显示的文档字符串所生成的实际文档均不起作用,我只有404 Github Pages屏幕。
要解决此问题,只需将一个空文件放在/ docs目录(或生成文档的位置)中,并将其命名为.nojekyll
要确认,您的文件结构现在应如下所示:
./docs/.nojekyll # plus all your generated docs
将其推送到您的远程Github存储库,您的链接等现在应该可以正常工作。
还要确保已在Github设置中选择了
Settings -> Github Pages -> Source -> master brach /docs folder
根据您的文档框架,您可能每次更新文档时都必须重新创建此文件,这是使用typedocs和每次在package.json文件中创建.nojekyll文件的示例:
# package.json
"scripts": {
"typedoc": "typedoc --out docs src && touch docs/.nojekyll"
},
答案 11 :(得分:2)
由于某种原因,GitHub页面的部署今天(2020年5月5日)停止工作。以前我没有任何HTML,只有md文件。我试图创建一个index.html,它立即发布了该页面。删除index.html后,该出版物将继续工作。
答案 12 :(得分:2)
在index.html文件的开头添加以下内容
<!DOCTYPE html>
答案 13 :(得分:2)
就我而言,以上所有建议都是正确的。我的大多数页面都在工作,但很少有返回404的页面,即使Markdown文件在那里并且看上去正确。以下是这些页面上为我解决的问题:
UTF-8
的特殊字符,我认为这就是GitHub页面无法呈现它们的原因。更新/删除这些字符并推送新的提交将其修复。 '
,我删除了它们,并且页面内容开始显示良好答案 14 :(得分:2)
如果你确定你的结构是正确的,只需按空提交或用一些空格更新index.html文件,它就可以了!
答案 15 :(得分:2)
我通过删除计算机上的“username.github.io”文件夹重新执行这些步骤,包括更改索引/ html文件,让网站工作。
我的错误(我认为)是我最初克隆了“https://github.com/username/username.github.io .git ”而不是https://github.com/username/username.github.io(没有“.git” )
答案 16 :(得分:1)
在此问题出现之前我绑定了我的域名。我承诺并推动了分支gh-pages,它解决了我的问题。新的提交迫使jekyll重建您的页面。
答案 17 :(得分:1)
如果您看到404即使一切正常,请尝试切换https / http。
原始问题的网址有误,通常您可以查看回购设置并找到生成网站的正确网址。
但是我已经正确设置了所有内容,并且设置页面已经发布了,然后我仍然看到了404。
感谢@Rohit Suthar的评论(尽管该评论是使用https),我将网址更改为http并且有效,然后https也工作了。
答案 18 :(得分:1)
我正在关注this YT video。因此,当我在终端中运行命令时,它已经将代码推入了gh-pages
分支。然后,我推送到master
分支。它给了我404错误。
然后我将分支交换到master
,然后再次恢复为gh-pages
,现在错误消失了。即使它不在URL中,它也指向index.html
。
答案 19 :(得分:1)
答案 20 :(得分:1)
在我的情况下,我必须去项目设置并启用github页面。默认为关闭
答案 21 :(得分:1)
就我而言,网址很长。所以,我猜有一个限制。我把它放到我的自定义子域中并且有效。
答案 22 :(得分:0)
我的解决方案是在 homepage
中正确设置 package.json
。
我的项目名称是 monsters-rolodex
,我从控制台 gh-pages -d build
发布。
"homepage": "https://github.com/monsters-rolodex",
该项目的构建假设它托管在 /monsters-rolodex/。
之前它不起作用,因为在主页 url 中我包含了我的 github 用户名。
答案 23 :(得分:0)
我必须将我的存储库重命名为随机名称,然后将其重命名为原始名称,以使其正常工作。
似乎是GH Pages的错误。
答案 24 :(得分:0)
在尝试了上面提到的大多数方法后,我也遇到了同样的问题,但我找不到解决方案。就我而言,是因为Github将master
的名称更改为main
分支。
转到设置->转到GitHub Pages部分,并将分支更改为main:
到
保存并选择一个主题,该网站就会上线。
答案 25 :(得分:0)
昨天我遇到了同样的问题(在新建立的GitHub页面网站上看到404)。我尝试了许多方法,例如切换新主题等。但是看来,这种方法仍然无法解决我的问题。最后,我通过将GitHub页面网站的分支切换到另一个分支来解决问题,然后单击“保存”。请稍等片刻,然后再将其切换回去。然后问题突然解决了。
答案 26 :(得分:0)
我也遇到了这个问题,我的页面显示404。 然后我在存储库中添加了 README.md ,然后404消失了。
答案 27 :(得分:0)
此错误的另一个变体:
我在完成教程后设置了我的第一个Github页面,但给文件in
一个-更有意义的名称: readme.md
。
那是一个致命的错误:
如果您没有自述文件,则将其作为网站的索引
welcome.md
(或index.md
),与浏览到 GitHub上的存储库。
(from Publishing with GitHub Pages, now as easy as 1, 2, 3)
然后,我可以使用在index.html
/ published at
/ Repository
下指定的 Settings
链接访问我的网站页面,然后按 > GitHub Pages
或更短的 welcome.html
。
答案 28 :(得分:0)
就我而言,我的存储库是私有的。公开存储库,然后再次执行所有步骤。
答案 29 :(得分:0)
此外,GitHub pages doesn't currently support Git LFS。这样,如果您在使用Git LFS提交的GitHub页面中有图像(或其他二进制资产),则将找不到这些文件的404。
这对于使用Doxygen或类似工具生成的文档非常普遍。
在这种情况下,解决方案是根本不使用Git LFS提交那些文件。
答案 30 :(得分:0)
我有同样的问题..非常奇怪的问题.. 我的HTML在标题
后留有空格> <title>
>
> <script>
已固定,删除空间后
> <title>
> <script>
答案 31 :(得分:0)
还有另一种情况:
<orgname>.github.io
的存储库的组织页面(而非项目页面)master
分支(asciidoc)中将文档作为标记来源master
提取源文档文件并将生成的html文件推送到gh-pages
分支 gh-pages
分支将使用生成的html页面进行更新。 GitHub Environment
标签提供了指向组织页面的链接。单击它会产生一个404
。
根据 https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/
具有这种类型的存储库名称的用户和组织页面是 仅从
master
分支发布
如果我正确理解这一点,则在创建gh-pages
或User
站点而不是Organization
站点的情况下,不会从Project
分支发布GitHub Pages。
我将存储库重命名为Project
站点而不是Organization
站点,然后按预期发布了gh-pages
分支。
答案 32 :(得分:0)
我也遇到了这个问题(404),根本原因是我的文件名为INDEX.md
。我在Windows上进行开发,并且我的本地Jekyll站点正常工作(因为Windows默认情况下将文件名区分大小写)。当推到Github时,它不起作用。将INDEX.md
重命名为index.md
后,一切运行良好。
答案 33 :(得分:0)
转到存储库的设置部分,然后在“源”部分选择master分支,然后在刷新页面后单击“保存”按钮,您将能够看到页面的链接!。
答案 34 :(得分:0)
在私人仓库中,当我第一次添加并将我的gh-pages分支推送到github时,github页面的设置会自动更改以指示gh-pages分支将被发布,但是没有绿色或蓝色条形图github.io网址,没有自定义域名选项。
直到我将源切换到master并快速将源切换回gh-pages,它实际上使用包含已发布url的绿色栏进行更新。