Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

修复了因为 baseurl 导致的错误 (Fix issues caused by baseurl) #112

Merged
merged 9 commits into from
May 20, 2019
Merged

修复了因为 baseurl 导致的错误 (Fix issues caused by baseurl) #112

merged 9 commits into from
May 20, 2019

Conversation

cometeme
Copy link
Contributor

@cometeme cometeme commented May 17, 2019

出现的问题:

因为设置 baseurl 会导致:

  • 图像 (头像、文章 cover) 无法显示
  • Tag / Home 链接错误
  • 文章链接错误
  • CSS / JS 文件引用错误

何时出现错误:

当设置 baseurl 时。
尤其是在本地使用 Jekyll 搭建博客时,如果设置了 baseurl ,不仅会导致图片无法引用,而且甚至无法找到 CSS 文件。
下图显示了在本地,将 baseurl 设置为 /blog 时会出现的问题:
Screen Shot 2019-05-17 at 10 50 03 PM


涉及到这个问题的 issues:

#95 #97 #98


出现问题的原因:

  1. CSS / JS / 图像文件链接位置不正确
  2. GitHub Pages 中,修改网站的 baseurl 并不会导致生成网站的位置变化,例如你将 baseurl 设置为 /blog ,你生成的博客还是在 xxx.github.io 这个目录,此时图像的引用位置就会错误。

解决方法:

  1. 使用 GitHub Pages 时,一定要将 baseurl 设置为你的网站后缀,例如你新建了一个叫做 blog 的仓库,此时 GitHub Pages 分配的链接为 xxx.github.io/blog ,那么就将 baseurl 设置为 /blog,而如果是默认路径就将 baseurl 留空
  2. prepend: site.baseurl 在 GitHub 中可能会产生问题,需要修改为 relative_url ,可见:baseurl of '/' now breaks on GitHub pages github/pages-gem#460

主要进行了一下修复:

  • prepend: site.baseurl 修改为 relative_url
  • 将 CSS / JS 文件的引用链接改为 {{ "path" | relative_url }}
  • 在上下文章的 url / cover 部分增加 relative_url
  • 将 Home / Tags /搜索 的路径设置为相对路径。
  • _config.yml 文件中添加了注释

修复效果:

Screen Shot 2019-05-17 at 10 45 02 PM


未能解决的问题

  1. index.js 中,设置 icon 的位置为:
"background": "url(/assets/icons/logo.svg) no-repeat center"

这样会导致菜单栏的 icon 无法正常渲染。
因为 Jekyll 模版无法渲染 js 文件,所以这一块无法修改,还需要用其他方法修复。 (暂时没有找到好的方法)。
2. 在写 markdown 文件时,引用的图片也无法正常渲染。因为无法修改 markdown 的图片链接,所以只能在写文章引用图片时手动加上前缀

@kaeyleo kaeyleo merged commit 19fe6bd into kaeyleo:master May 20, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants