jekyll
jekyll是一个简单的免费的Blog生成工具,类似WordPress。但是和WordPress又有很大的不同,原因是jekyll只是一个生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如Disqus。最关键的是jekyll可以免费部署在GitHub上,而且可以绑定自己的域名。它由GitHub联合创始人汤姆·普雷斯顿·沃纳用Ruby编写,并根据MIT许可证发布。
历史
Jekyll由Tom Preston-Werner于2008年首次发布,并在后来由帕克·摩尔(Parker Moore)接管,领导发布了Jekyll 1的工作,至今他仍负责其维护。Jekyll推动了向静态网站的Web开发趋势,并且截至2017年,它成为了最受欢迎的静态站点生成器,这在很大程度上是因为它被GitHub Pages采用。
特点
Jekyll不使用数据库,用户通过编写markdown、Textile或Liquid文件,生成一个完整的静态网站,可以由Apache HTTP Server、Nginx或其他Web服务器提供服务。Jekyll是GitHub Pages的引擎,非常灵活,可以与Bootstrap、Semantic UI等前端框架结合使用。此外,Jekyll网站可以连接到基于云的CMS软件,例如CloudCannon,Forestry,Netlify或Siteleaf,使编辑者无需知道如何编程即可修改网站内容。Jekyll的设计哲学是简洁高效,它不会做出大胆的假设来试图比用户聪明,也不会用不必要的复杂性和配置负担用户。简而言之,Jekyll让你专注于最重要的事情:你的内容。
使用
首先建立目录结构,然后增加文件,最后使用jekyll发行生成静态网页发行。如果使用GitHub的话,那就有托管的地方了。配置文件`_config.yml`用于保存配置,使命令行操作更加方便。`_includes`目录存放可以重复利用的文件,可以被其他文件包含。`_layouts`存放模板文件,而`_posts`则存放实际的文章内容,文件名必须遵循`YEAR-MONTH-DATE-title.MARKUP`的格式。最终生成的文件存放在`_site`文件夹中。使用YAML Front Matter可以将文件转换成最终格式。例如:
```
---
layout: post
title: xxxxx
category: tech
---
```
这是一个简单的头部信息示例。其他的目录如`层叠样式表`, `images`等都会被拷贝到最终文件的目录下。