github pages gh-pages 分支图片链接失效
来源:互联网 发布:网络艺术名字大全 编辑:程序博客网 时间:2024/05/18 00:01
症状
我从 github 上 clone 了一个项目 : cs231n.github.io, 并改名为 cs231n-cn. 不过直接 clone 后访问 liuchengxu.github.io/cs231n-cn
却发生图片链接丢失的问题。
原因
因为原来 cs231n.github.io 属于 username.github.io
,直接访问即可。而 clone 后访问的话属于 username.github.io/repo
的形式,比如我的情况是 liuchengxu.github.io/cs231n-cn
.
前者的图片链接直接写为 /assets/img1.png
即可,生成的图片地址就为 username.github.io/assets/img1.png
, 现在我们需要改为 username.github.io/repo/assets/img1.png
才能正常访问。
解决方案
baseurl
在
_config.yml
中写入baseurl: "/repo"
, 比如/cs231n-cn
.图片链接加入
{{ site.baseurl }}
, 由<img src="/assets/pixels_embed_cifar10.jpg">
改为<img src="{{ site.baseurl }}/assets/pixels_embed_cifar10.jpg">
。
总结
实际上不只是图片,对于其他静态文件如果直接写/assets/foo.file
这样的地址,从 username.github.io
换到 username.github.io/repo
都会发生路径问题,无法获取到文件.
不过 cs231n 却并没有,看了一下从中学到了一些:
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}"> <!-- Custom CSS --> <link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl }}">
以前我都是直接这么写 href='/css/main.css'
, 没有 prepend 这种东西,像 cs231n 这样就能够将更加平稳地过渡到 username.github.io/repo
.
参考:https://github.com/jekyll/jekyll/issues/332
- github pages gh-pages 分支图片链接失效
- 在本地提交代码到github主分支同时提交到gh-pages分支
- 如何用Github的gh-pages分支展示自己的项目
- github pages
- Github Pages
- github pages
- Github Pages
- Github Pages
- Github Pages
- 部署好静态网页,上传文件在gh-pages分支转不到master的解决办法
- gh-pages 首次搭建遇到的坑
- 试玩github pages
- Github Pages域名绑定
- GitHub Pages 建立
- github Pages入门
- Github pages搭建网页
- GitHub Pages博客托管
- Jekyll & Github Pages
- C语言操作文件
- Cockroach Design 翻译 (一) 目录
- 【laravel】安装与配置(一)
- phpstorm使用总结(一)
- IPO与上市的关系?
- github pages gh-pages 分支图片链接失效
- ogre 引擎 框架追踪 第四章 资源加载之资源组初始化
- 今天的世界,未来的世界会不会相同
- Java 连接数据库的工具包
- 画图理解软件工程-UML统一建模语言-类图和时序图(四)
- 二值分类模型的评价指标
- websphere报表应用挂起原因及解决方法
- Error:Execution failed for task ':app:buildInfoDebugLoader'. Exception while doing past iteration b
- 堆排序