【问题标题】:Why site.baseurl doesn't work on Jekyll?为什么 site.baseurl 在 Jekyll 上不起作用?
【发布时间】:2016-03-29 21:06:48
【问题描述】:

我一直在尝试在 git-pages 上创建 jekyll 站点和主机。 Localy 一切正常。但在 github-pages 上仅适用于首页和 10 篇最新博文。
但是在转到“Blogas”或“Straipniai”等任何其他页面后,每个链接都以“localhost:4000”开头,并且自然会破坏 css、javascript...
而且我不确定问题出在哪里,因为即使我将 /_includes/header.html site.url 更改为 site.baseurl,一切都是一样的。
这是git-hub
还有site

【问题讨论】:

    标签: jekyll


    【解决方案1】:

    我认为问题在于您以某种方式同时拥有相同页面的 .md 和 .html 版本。您在本地构建的 .html 版本,GH 更喜欢它。它在 url 中有 localhost,所以它不起作用。尝试删除这些子文件夹中的 .html 文件,看看会发生什么。例如,从invisibleghostt.github.io/blogas/ 中删除 index.html 文件,然后查看该页面是否已修复。

    不知道你是怎么把这些文件放在那里的,它们不应该在那里。

    【讨论】:

      【解决方案2】:

      看,你最好在_config.yml 上解决一些问题:

      url: "http://codas.lt"     # add the site url
      
      gems:                      # remove `jekyll` from gems
        - jekyll-sitemap
        - jekyll-gist
        - octopress
      
      include: [".htaccess"]    # remove this line (GitHub Pages does not support .htaccess)
      

      另一件事是,您需要从文件夹 _posts 中删除所有文件夹,如 here 所述:

      如果您将类别组织为 /_posts/code/2008-12-24-closures.md,你需要重组你的 目录将类别放在_posts 目录之上,如 如下:/code/_posts/2008-12-24-closures.md

      您可能在本地使用与 GitHub Pages' 不同的 Jekyll 版本(当前是 Jekyll 3.0.3)。这就是为什么您的网站在本地工作而在那里不工作的原因。为避免这种情况,请使用 Bundler(依赖管理器)构建 Jekyll。在this answer 上,您可以逐步了解如何做到这一点。

      希望有所帮助! :)


      注意:如果您不知道如何调整主题以与 GitHub Pages 一起使用,您可以尝试GitLab Pages,因为您可以轻松设置您想要用于构建网站的 Jekyll 版本。例如,this project 使用 Jekyll 2.5.3 构建站点。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-29
        • 1970-01-01
        • 2013-12-20
        相关资源
        最近更新 更多