将自定义域引用到jekyll生成的github项目页面后,链接和布局断开

时间:2014-03-09 03:29:41

标签: git github jekyll cname

将CNAME更改为我的自定义域(http://alphagirls.cc)后,索引和指向帖子和静态页面的链接将无法使用CSS中指定的外观+感觉进行渲染。该网站应该在我的github帐户上引用项目页面回购:usrrname.github.io/alphagirls/

我尝试的事情:

我检查过我将CNAME文件放在网站根目录中,而且我没有在那里写“http://”。我也尝试将A记录更改为我的github帐户的IP,但它仍然是相同的,所以我不认为这是问题。还在我的_config.yml

中指定了“url:http://alphagirls.cc

我还使用了{{sitebase.url}}标记来获取相关链接。我认为静态页面和帖子以及我在css中指定的外观+感觉在alphagirls.cc上访问时没有呈现,因为我没有指定baseurl作为我的自定义域名(alphagirls.cc)所以我将我的baseurl更改为把config.yml推回去,注意到没有链接工作,布局没有再次显示。所以这不应该是问题。

1 个答案:

答案 0 :(得分:4)

看起来这是一个问题,相对网址没有指向正确的位置,这就是为什么你的github.io site按预期工作,但你的alphagirls.cc网站没有。例如,已发布的alphagirls.cc网站目前引用了这些位置的样式表:

<link rel="stylesheet" href="/alphagirls/css/syntax.css">
<link rel="stylesheet" href="/alphagirls/css/main.css">

如果您的CSS文件生成到_site/alphagirls/css目录中,但这不存在,这将有效。它们似乎位于_site/css目录中:

Jekyll _site directory view

这意味着CSS文件目前已发布到http://alphagirls.cc/css/syntax.csshttp://alphagirls.cc/css/syntax.css

要解决此问题,请尝试以下2项更改:

  1. _config.ymlbaseurl: "/alphagirls"更改为baseurl: "/"default configuration for Jekyll,因此您只需从配置中删除此行即可。

    < / LI>
  2. header.html中,从您的网址中删除前导/,例如:

    • 旧:<link rel="stylesheet" href="{{ site.baseurl }}/css/syntax.css">
    • 新:<link rel="stylesheet" href="{{ site.baseurl }}css/syntax.css">
  3. 注意:您需要为所有网址执行#2,包括指向您的相关网页的链接。