在没有Web服务器的情况下部署Jekyll项目

时间:2015-06-15 12:52:52

标签: deployment webserver jekyll

我使用Jekyll创建了一个博客,现在我需要将其部署并发送给需要在没有Web服务器的情况下导航的人。所以,我从终端输入jekyll build并在_site中获取已编译的项目。但是现在,如果我打开index.html,它就不会获得资产(CSS)。在head标记标记中/css/main.css,而我需要css/main.css(没有初始斜杠)。我不想手动更改网址,因此我想询问是否可以部署Jakyll项目,以便在没有网络服务器的情况下在本地展示。

2 个答案:

答案 0 :(得分:1)

只有当您知道文件系统中的部署位置时,才有可能。

示例:

的Linux

要在/home/user/www中进行部署,请转到_config.yml并设置baseurl: /home/user/www

要在C:/Users/Toto/www中进行部署,请转到_config.yml并设置baseurl: /C:/Users/Toto/www

部署意味着在目标文件夹中复制generated files复制_site文件夹。

执行jekyll build并向您发送包含部署说明的文件。

修改

这个答案是给你的,而不是客户。

当您的客户端肯定正在运行Windows时,您只需设置baseurl: /C:/_site,压缩_site文件夹并要求客户端解压缩C:/

客户只需点击C:/_site/index.html即可在默认浏览器中启动该网站。

答案 1 :(得分:0)

将资产目录更改为相对路径,例如: assets / css / 。 这将在服务器或本地工作。

设置页面变量以表示Yaml前端的嵌套。然后,将该变量附加到您的资产。

---
layout: default
title: Nested Page
path: ../
---

---
layout: default
title: Root level page
path: ""
---

<link rel="stylesheet" href="{{ page.path }}assets/stylesheets/style.css">