我使用Jekyll创建了一个博客,现在我需要将其部署并发送给需要在没有Web服务器的情况下导航的人。所以,我从终端输入jekyll build
并在_site
中获取已编译的项目。但是现在,如果我打开index.html,它就不会获得资产(CSS)。在head标记标记中/css/main.css
,而我需要css/main.css
(没有初始斜杠)。我不想手动更改网址,因此我想询问是否可以部署Jakyll项目,以便在没有网络服务器的情况下在本地展示。
答案 0 :(得分:1)
只有当您知道文件系统中的部署位置时,才有可能。
示例:
要在/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">