静态资源未在GitHub页面上加载

时间:2013-08-02 18:37:59

标签: redirect github github-pages

我创建了一个网站,并尝试在git中心页面上托管它。我的网站位于 -

http://<username>.github.io/<project name>/

但我网站的静态文件可通过以下路径获取 -

http://<username>.github.io/css/site.css
http://<username>.github.io/script/main.js

上述路径省略了<project name>

所以每当我点击url时,我的静态文件都没有被加载。

有没有办法让它与github网址一起使用?

注意:当我使用自定义域时,一切正常,因为在这种情况下相对路径很好。

临时解决方案 我创建了一个User page instead of a Project page来克服这个问题。

3 个答案:

答案 0 :(得分:20)

另一个选项是将文件.nojekyll包含在您的顶级目录中,告诉github只是为您的页面提供服务而不试图破解它们(如果您尝试从sphinx发布oputput,这很有用)它不再需要解析/修改/重写。

relevant link

答案 1 :(得分:12)

来自documentation to setup a custom domain

  

警告:项目页面子路径如   http://username.github.io/projectname不会被重定向到   项目的自定义域。

这意味着,由于相对路径,您可以在自定义域上的username.github.io/project-name 上拥有资源。

如果你想在github中找到它们,请查看文档中有关baseurl配置的内容,它位于页面底部的“Project Url Structure”中。你只需添加一个

即可
baseurl: /project-name

排到_config.yml并在永久链接中使用{{ baseurl }}标记,jekyll会进行替换。要在本地测试它,只需使用此选项运行服务器

jekyll serve --baseurl ''

希望它有所帮助:)快乐的编码!

答案 2 :(得分:0)

如果您的项目是使用Create React App创建的React应用,请在homepage中设置package.json,例如:

"homepage": "/<project name>",

如果您不使用客户端路由,请使用以下方法:

"homepage": ".",

请参见https://create-react-app.dev/docs/deployment/#building-for-relative-paths