Jekyll:需要所有 href 都是相对的或从 server.domain 开始

Jekyll: need all hrefs to be relative or start from server.domain

我有一个 jekyll 本地网站,希望能建成 public。我这样做的唯一方法是在 apache2 上使用 mod_proxy。不幸的是,只有主页可以正常工作。其他的没有被转发,因为 Jekyll 创建的链接看起来像:

<a href=/mysite/2015/07/17/About/>About</a></li>

我需要它们要么是相对的,即要么是绝对的,即:

<a href=http://my.server.com/mysite/2015/07/17/About/>About</a></li> 

只有在那种情况下 mod_proxy 才能用 localhost:4000/mysite

替换 http://my.server.com/mysite

现在,由 Jekyll 完成的以 / 开头的链接将被发送,因为它们将由主网站提供,即托管在 http://my.server.com/

上的链接

在您的 _config.yml 文件中,您可以像下面这样设置您的基础 url:

url: http://www.example.com

您可以稍后使用液体标记调用此变量:

<a href="{{ site.url }}/path-to-your-stuff"></a>

而且你有绝对的 URL。

url 的 /mysite 部分是 baseurl 配置参数,在 _config.yml 中找到。

一位亲戚 link 现在是:

<a href={{site.baseurl}}/2015/07/17/About/>About</a></li>

一个绝对的 link 现在是:

<a href={{site.url}}{{site.baseurl}}/2015/07/17/About/>About</a></li>