用jekyll制作高大上的网站(一)——安装与配置
很多人会制作自己的主页,页面美观简洁,一直很在意是怎么做的。
最近公司需要做个文档库的主页,就研究了一些开源的工具,后面发现了jekyll(读杰克尔),将纯文本转换为静态博客网站。
一、Ruby
jekyll提供了很多现成的主题可以使用,里面有很多高大上的款式。
官网上面有专门一节是介绍安装的,不过在实际安装中还是会有一些问题。
需要有下载Ruby环境,选最新的那个版本即可,官网上面安装列中有一个RubyGems,但Ruby1.9.1 以后版本已经自带了,所以无需额外下载。
二、切换source源
由于国内网络原因(你懂的),导致 rubygems.org 存放在 Amazon S3 上面的资源文件间歇性连接失败。
有两张方法,一种是切换到淘宝,另外一种是切换到ruby-china,网上大部分的教程都是用淘宝的。
在用淘宝的后老是会出现认证错误,后面上google查问题,发现淘宝的已经不维护了,详见《Ruby China的RubyGems 镜像上线》
我把两种方法都记录了一下,
1) ruby-china
将source改成“https://gems.ruby-china.org/”,在打开的页面中,会告诉你几个指令。
由于我先用了taobao的source,所以这里remove的是淘宝的。
ruby-china中说道:“如果遇到 SSL 证书问题,你又无法解决,请直接用 http://gems.ruby-china.org 避免 SSL 的问题。”
2) taobao
将source改成“https://ruby.taobao.org/”,在打开的页面中,会告诉你几个指令。
如果在输入指令出错的话,如下图所示,就是要让你下载下载证书文件。
然后放到某个位置,输入指令set,“D:\Ruby23-x64\cacert.pem”就是文件的具体路径
set SSL_CERT_FILE=D:\Ruby23-x64\cacert.pem
也可以将“SSL_CERT_FILE”设置为环境变量,这样就不用每次都要输入设置的指令。
不知为何,后面我加载包的时候,就是会出现问题,囧,也许是我做了什么操作导致的,额额额。
三、安装jekyll
在输入安装指令后,就会看到默认安装了14个包。
gem install jekyll
四、启动
从主题列表中选了两个,Minimal Mistakes和Jekyll Clean。前者页面比较全但相对比较复杂,后者页面少但很简洁。
输入指令,
jekyll serve --watch
在显示的文字中有一句让你安装“wdm”,会在下面介绍。
在页面中输入“http://localhost:4000/jekyll-clean/index.html”后就能看到页面了。
五、wdm
从 v2.4.0 开始,Jekyll 本地部署时,会相当于以前版本加 --watch 一样,监听其源文件的变化。
而 Windows 似乎有时候并不会奏效,若你碰到,可安装 wdm (Windows Directory Monitor ) 来改善这个问题。
如果要安装“wdm”得要先安装“Devkit”,在打开的网站中下载后,会让你解压到某个文件夹,接下来就是进入到这个文件夹中。
执行指令“ruby dk.rb init”。
再执行指令“ruby dk.rb install”,不过提示我先去修改“config.yml”中的路径。
config.yml文件就在解压出来的文件中。
再执行install指令。
六、Gemfile文件
Gemfile是一个用于描述gem之间依赖的文件。gem是一堆Ruby代码的集合,它能够为我们提供调用。
Gemfile是可通过Bundler创建。
gem install bundler
bundle init
bundle install
Gemfile文件中设置的内容如下:
source "https://rubygems.org" gem "jekyll-paginate"
gem "kramdown"
gem "jekyll-watch"
gem "wdm", "~> 0.1.0" if Gem.win_platform?
七、自动刷新页面
1)修改Gemfile文件
gem 'guard'
gem 'guard-jekyll-plus'
gem 'guard-livereload'
要添加三个包,执行“bundle install”,如果执行出错,那就一个一个加吧。
2)创建guard配置文件
执行指令,将会生成一个Guardfile文件。
guard init
生成的Guardfile文件内有一些代码,在代码的最后添加如下代码:
guard 'jekyll-plus', :serve => true do
watch /.*/
ignore /^_site/
end guard 'livereload' do
watch /.*/
end
3)添加livereload插件
安装Live Reload Extension,如果是chrome,就到Chrome Web Store下载。
安装成功后,在右上角可以看到一个小按钮
如果是运行状态,那么会自动添加一个js文件引用:
4)运行
执行运行指令:
bundle exec guard start
这里注意一下,livereload要先关闭。
运行上面指令,当出现下面的内容后,再运行livereload。
然后会出现“connected”连接了,接下来修改内容就会自动刷新页面了。
试用后发现,有时候会刷新不成功,还是原来的样子,看来某些地方还需要改进。
demo下载:
http://download.csdn.net/detail/loneleaf1/9508074
参考资料:
Fixing SSL_connect error while installing Ruby Gems on Windows
Setting Up LiveReload With Jekyll
用jekyll制作高大上的网站(一)——安装与配置的更多相关文章
- 用jekyll制作高大上的网站(二)——实际应用
最近公司要制作个文档库,直接就可以将jekyll应用到实际中. 模版使用了Jekyll Clean,这么模版相对内部简单一点,学习成本不会很大,而复杂的Minimal Mistakes就当作参考. 模 ...
- VS2010制作网站自定义安装程序 转
最近在把一个网站打包成安装程序,这方面的文章网上有很多,也看了不少,但因为开发环境的不同,遇到了一些问题,便写下这篇文章记下整个流程(有很多资源都来自互联网,由于条目颇多,所以无法说明其来处,敬请谅解 ...
- UltraISO制作U盘启动盘安装Win7/10系统攻略
UltraISO制作U盘启动盘安装Win7/9/10系统攻略 U盘安装好处就是不用使用笨拙的光盘,光盘还容易出现问题,无法读取的问题.U盘体积小,携带方便,随时都可以制作系统启动盘. U盘建议选择8G ...
- 用jekyll和github把网站建起来!
先把这些天学习的用jekyll在github上搭建网站的步骤记录下来,留作参考. #安装jekyll 确定系统安装 Git, Ruby, RubyGems, Nodejs, Python2.7. 如何 ...
- Win系统下制作U盘CLOVER引导+安装原版Mavericks10.9
啃苹果有一段时间了,之前一直用白苹果,但是白苹果配置有所限制,对于我搞音频的人来讲,显得有点拖沓.所以研究了将近2年的黑苹果,最近心血来潮给大家一个比较傻瓜式的教程,首先强调一点,黑苹果是需要折腾的, ...
- C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装
原文:C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装 要求: JDK.Mysql.Tomcat三者制作成一个安装包, 不能单独安装,安装过程不显示三者的界面, 安装完成要配置 ...
- 基于NSIS脚本开发的安装程序制作软件:易量安装
原文 基于NSIS脚本开发的安装程序制作软件:易量安装 前几天“萝卜”给我推荐了一款安装程序制作工具——易量安装. 易量安装是一款安装程序制作软件,基于著名的NSIS(Nullsoft Scripta ...
- vs2015 制作安装包额外需要安装的软件VSI_bundle
vs2015 制作安装包额外需要安装的软件VSI_bundle 下载地址:http://files.cnblogs.com/files/sdner/VSI_bundle.rar
- lnmp环境下piwiki网站流量分析工具的安装及配置
piwiki统计网站的安装 Piwik是一个PHP和MySQL的开放源代码的Web统计软件. 它给你一些关于你的网站的实用统计报告,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等- Piwi ...
随机推荐
- 【hihoCoder】1082: 然而沼跃鱼早就看穿了一切
题目:http://hihocoder.com/problemset/problem/1082 输入一个字符串,将其中特定的单词替换成另一个单词 代码注意点: 1. getline(istre ...
- android的EditText重新获取焦点问题
在android开发过程中关于EditText在setFocusable(false);后,当需要再次获得焦点输入时设置setFocusable(true);后还是无法获得焦点的问题: 解决办法: 对 ...
- iOS 从某个页面返回然后刷新当前页面
-------->不说废话 在返回页面实现下面方法: - (void)navigationController:(UINavigationController*)navigationContro ...
- ntko office在线编辑控件问题记录
ntko office在线预览插件 http://www.ntko.com/ 问题:火狐或谷歌下保存报[没有打开的文档]错误,ie正常 原因:火狐.谷歌.ie的各方法执行文字不同,ie嵌在页面,而火狐 ...
- js中的caller和callee属性
caller返回一个对函数的引用,该函数调用了当前函数. functionName.caller functionName 对象是所执行函数的名称. 说明对于函数来说,caller 属性只有在函数执行 ...
- Android安全开发之通用签名风险
Android安全开发之通用签名风险 作者:伊樵.舟海.呆狐@阿里聚安全 1 通用签名风险简介 1.1 Android应用签名机制 阿里聚安全漏洞扫描器有一项检测服务是检测APP的通用签名风险.And ...
- 8天掌握EF的Code First开发之Entity Framework介绍
返回<8天掌握EF的Code First开发>总目录 本篇目录 Entity Framework概要 什么是ORM Entity Framework简史 Entity Framework具 ...
- Jenkins常用插件说明(持续更新)
本文主要记录在学习以及使用Jenkins过程中常用的对我们有帮助的插件,同时本文将会持续进行更新.如果大家发现有其他野很好用的插件,也欢迎参照下面的格式,在评论中进行回复反馈. 一.通用插件 1.Em ...
- [译]Introducing ASP.NET vNext and MVC 6
原文:http://www.infoq.com/news/2014/05/ASP.NET-vNext?utm_source=tuicool Part of the ASP.NET vNext init ...
- WCF Security基本概念(转载)
WCF Security 主要包括 "Transfer Security"."Access Control"."Auditing" 几个部分 ...