Jekyll中的相对链接
我对Jekyll中的链接有点问题 例如,我在文件夹中有一篇文章:Jekyll中的相对链接,jekyll,liquid,Jekyll,Liquid,我对Jekyll中的链接有点问题 例如,我在文件夹中有一篇文章: file:///C:/Users/My%20Name/Documents/jekyll_site/2014-10-25-Workshop.html 当我使用jekyll build时,帖子将插入此文件夹: file:///C:/Users/My%20Name/Documents/jekyll_site/_site/2014/10/25/Workshop.html 在post模板中,我使用以下简单代码转到下一页或上一页: {% i
file:///C:/Users/My%20Name/Documents/jekyll_site/2014-10-25-Workshop.html
当我使用jekyll build
时,帖子将插入此文件夹:
file:///C:/Users/My%20Name/Documents/jekyll_site/_site/2014/10/25/Workshop.html
在post模板中,我使用以下简单代码转到下一页或上一页:
{% if page.previous.url %}
<p class="previousEntry blueButton"> <a href="{{page.previous.url}}"><< Go to older entry</a></p>
{% else %}
<p class="previousEntry blueButton"><< Go to older entry</p>
{% endif %}
例如,当我点击“转到旧条目”时,我被引导到file:///C:/2013/04/12/FirstVisit.html
(这会导致“找不到此页面”页面)而不是file:///C:/Users/My%20Name/Documents/jekyll_site/_site/2013/04/12/FirstVisit.html
(这是页面的当前位置)
当我尝试将其上载到web服务器时,这会导致问题吗?如果是这样的话,我该如何使这个相对链接在我上传到web服务器后将用户指向我想要的位置?像
/folder/file.html这样的相对链接是相对于主机的,比如http://host.tld
主机+相对路径=http://host.tld/folder/file.html
AsJekyll serve
将主机的根文件夹设置为file:///C:/somePath/_site/
这最终解决了
根文件夹+相对路径=file:///C:/somePath/_site/folder/file.html
这是正确的路径
这里您正在谈论文件协议(file://),这里的“主机”是file:///C:
和相对路径/2013/04/12/FirstVisit.html
解析为
主机+相对路径=file:///C:/2013/04/12/FirstVisit.html
导致找不到页面
这里真正的问题是,您所说的是从文件资源管理器打开的页面。您单击了使用文件协议而不是http协议打开的html页面
确保使用http://localhost:4000
在浏览器中粘贴此url,而不是单击文件资源管理器中的页面。像/folder/file.html这样的相对链接是相对于主机的,比如http://host.tld
主机+相对路径=http://host.tld/folder/file.html
AsJekyll serve
将主机的根文件夹设置为file:///C:/somePath/_site/
这最终解决了
根文件夹+相对路径=file:///C:/somePath/_site/folder/file.html
这是正确的路径
这里您正在谈论文件协议(file://),这里的“主机”是file:///C:
和相对路径/2013/04/12/FirstVisit.html
解析为
主机+相对路径=file:///C:/2013/04/12/FirstVisit.html
导致找不到页面
这里真正的问题是,您所说的是从文件资源管理器打开的页面。您单击了使用文件协议而不是http协议打开的html页面
确保使用http://localhost:4000
在浏览器中粘贴此url,而不是单击文件资源管理器中的页面。像/folder/file.html这样的相对链接是相对于主机的,比如http://host.tld
主机+相对路径=http://host.tld/folder/file.html
AsJekyll serve
将主机的根文件夹设置为file:///C:/somePath/_site/
这最终解决了
根文件夹+相对路径=file:///C:/somePath/_site/folder/file.html
这是正确的路径
这里您正在谈论文件协议(file://),这里的“主机”是file:///C:
和相对路径/2013/04/12/FirstVisit.html
解析为
主机+相对路径=file:///C:/2013/04/12/FirstVisit.html
导致找不到页面
这里真正的问题是,您所说的是从文件资源管理器打开的页面。您单击了使用文件协议而不是http协议打开的html页面
确保使用http://localhost:4000
在浏览器中粘贴此url,而不是单击文件资源管理器中的页面。像/folder/file.html这样的相对链接是相对于主机的,比如http://host.tld
主机+相对路径=http://host.tld/folder/file.html
AsJekyll serve
将主机的根文件夹设置为file:///C:/somePath/_site/
这最终解决了
根文件夹+相对路径=file:///C:/somePath/_site/folder/file.html
这是正确的路径
这里您正在谈论文件协议(file://),这里的“主机”是file:///C:
和相对路径/2013/04/12/FirstVisit.html
解析为
主机+相对路径=file:///C:/2013/04/12/FirstVisit.html
导致找不到页面
这里真正的问题是,您所说的是从文件资源管理器打开的页面。您单击了使用文件协议而不是http协议打开的html页面
确保使用http://localhost:4000
通过在浏览器中粘贴此url,而不是单击文件资源管理器中的页面。我执行了以下操作以使其在本地工作:
-双击索引并观察浏览器中的地址栏。对于我当前的项目,它是:file:///C:/Users/user/Desktop/blog/blog/_site/index.html
-打开\u config.yml
文件,并将其从baseurl:
,这正是index.html
结束部分之前地址栏中的内容,更改为baseurl::file:///C:/Users/user/Desktop/blog/blog/_site/“
-在候机楼重新建好了场地
这在本地有效。当我将网站上传到我的web主机上的文件夹时,我将再次更改baseurl
,类似的事情
<p class="previousEntry blueButton"> <a href="/2013/04/12/FirstVisit.html"><< Go to older entry</a></p>
<p class="nextEntry blueButton"><a href="/2014/07/09/OfficialMeeting.html">Go to newer entry >></a></p>
<p class="backToNews blueButton"><a href="news.html">Go back to main news page</a></p>