GitHub 页 post 链接无效

GitHub pages post links not working

我正在尝试让 Git 中心页面博客正常工作 (https://vcedgar.github.io/CREU-Poly-17/),但是当我转到 link 时,我的 post 应该是在 link 上不起作用(404 页面未找到或 404 文件未找到。)真正奇怪的是我有一个显示 post 列表的页面,并且 post 在那里显示得很好(发布日期、标题和简介。)但是当我从该页面单击 link 时,它不起作用。我有时也让它工作,但过了一会儿,如果我刷新页面,它会出现 404。

代码如下:

_config.yml

name: CREU 2017 Vatricia Edgar
markdown: kramdown
permalink: /CREU-Poly-17/:title
future: true

默认布局

<!DOCTYPE html>
<html>
    <head>
        <title>{{ page.title }}</title>
        <!-- link to main stylesheet -->
        <link rel="stylesheet" type="text/css" href="/CREU-Poly-17/css/main.css">
    </head>
    <body>
        <h1 class = "head">CREU-17</h1>
        <nav>
            <ul>
                <li><a href="/CREU-Poly-17/">Home</a></li>
                <li><a href="/CREU-Poly-17/About/">About</a></li>
                <li><a href="/CREU-Poly-17/Blog/">Blog</a></li>
            </ul>
        </nav>
        <h2 class = "head">{{page.title}}</h2>
            <div class="container")
              {{ content }}
            </div><!-- /.container -->
        <footer>
            <ul>
                <p><a href="mailto:vcedgar@asu.edu">email</a></p>
                <p><a href="https://github.com/vcedgar">github</a></p>
            </ul>
        </footer>
    </body>
</html>

post:

---
layout: default
title: Week1
date: 2017-09-01
published: true
---
fist post.

此外,这里是 file/folder 组织,以防相关: 关于和博客只包含关于和博客页面的 index.html,_layout 包含默认布局和我想用于 posts 的布局(切换到 posts 的默认布局以查看如果它有帮助,没有),css 显然包含 css 文件(只有一个 rn)并且 _posts 包含 post 文件。 My GitHub repo

自从我开始制作博客以来,我的 link 就一直遇到问题,但是这个难倒了我。感谢您的帮助!

我不确定这是否是一个实际问题,但 recommended in the documentation of Jekyll 以小写形式命名 post 文件,所以这可能是一个原因页面生成不正确。

如果这也没有帮助,我也会去掉路径中的区分大小写,并且我不会对站点和页面使用相同的文件夹。所以在最坏的情况下删除 _config.yml 中的 permalink 设置,以便使用默认的 post link 结构。

您也可以看看我的 Jekyll powered GitHub 页面 作为参考:

EDIT:OP 的 GitHub 页面显然 运行ning 在子目录中。这就是为什么即使在使用默认的 permalinks 之后,为了获得它 运行 他必须像 <a href="/CREU-Poly-17{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a> 一样将子目录放在 links 的前面。一个更漂亮的解决方案是将子目录放在 _config.yml 中作为 baseurl 如 [=22 的答案中所述=]大卫·杰奎尔.

_config.yml中:

url: https://vcedgar.github.io
baseurl: /CREU-Poly-17 #NO TRAILING SLASH

在您的链接中:<a href="{{ site.baseurl }}/CREU-Poly-17/">Home</a>

通过 github 页面部署时,您必须使用相对 url。

在 Github 中,当您创建站点时,存储库名称包含在页面 url 中,因此所有绝对链接似乎都是无效的。可以通过如下添加几条液体线来解决,

{{ post.url | relative_url }}

此外,如果您想在 url 中添加反斜杠,请使用以下内容

<link href="{{'your url including /home/eas/boot/sd.css' | relative_url}}" rel="stylesheet">