我有一个我一直在使用的网站,它在本地工作得很好,但是当部署到 gh-pages 时,在尝试获取资源时有很多 404。 例如,我有一行用于背景的 css
background: #fff url(/assets/images/bg.jpg) repeat top left;
我得到的 404 是这个{
github.io/assets/images/bg.jpg
路径应该是
github.io/myProject/assets/images/bg.jpg
我怎样才能让它工作?
最佳答案
发生的事情是,在您的本地设置中, Assets 文件夹位于同一目录中。
假设您的本地路径看起来像这样:
file:///index.html
,其中您的 Assets 文件夹是 index.html
的同级文件夹。在这种情况下,它起作用是因为 /
转到了目录的开头。在这种情况下是:file:///
并且它看到 Assets 文件夹,因此它在本地工作。
现在在 github 上,你有一个基本上是 my-project
的 repo。在 my-project
中,您有 index.html
和文件夹 assets
。所以当你在这里说 /assets/
时,begginnig 目录是 github.io
所以它会在那里寻找显然不存在的 assets
。
解决方案
不要在 Assets 前添加 /
。只要 Assets 与编写此代码的目录位于同一目录中,就应该没问题。
同时仔细查看相对路径以更好地理解它:http://www.coffeecup.com/help/articles/absolute-vs-relative-pathslinks/
关于javascript - gh-pages 在搜索资源时忽略元素目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32529588/