【发布时间】:2014-04-26 08:57:43
【问题描述】:
我正在使用 gh-pages 为我的 jekyll 网站进行部署。
每次我想在本地提供 jekyll 时,我一直在尝试进行开发,而不必在我的源代码的所有 css、js 和 img 文件之前删除/添加 {{ site.baseurl }} 路径。
我有点卡在这里,因为每个人都说要像这样传递一个空字符串:
jekyll serve --baseurl ""
但是当我这样做时,它会生成站点正常但返回:
error: can't dup TrueClass. Use --trace to view backtrace
似乎无法理解为什么我会收到此错误。
我的 _config.yml 看起来或多或少是这样的:
url: "http://myjekyllsite.github.io/"
baseurl: "/my-baseurl"
我已经链接了我的 js 和 css 文件,并将路径添加到我的图像,如下所示:
<img src="{{ site.baseurl }}/img/image1.jpg">
我使用的唯一插件是 jekyll-sass
有什么想法吗?
【问题讨论】:
-
是否需要使用绝对路径?为什么不只使用站点根目录的相对 URL(即
<img src="/img/image1.jpg">,然后你就可以放弃 baseurl 的东西了。 -
另外,如果你可以链接到 repo,我会看看你的完整代码。
-
另外,尝试使用
--baseurl ""参数而不是空的--baseurl "/" -
谢谢乔尔,使用 --baseurl "/" 让我得到了下面的答案。当然,当我最初使用 --baseurl "/" 时,路径有一个像 //img/img1.jpg 这样的双斜杠,所以答案是删除我所有链接中的正斜杠。
标签: ruby github jekyll base-url github-pages