jekyll搭建个人博客1
配置环境
简介
jekyll是一个简单的免费的,生成静态网页的工具,不需要数据库支持。但是可以配合第三方服务,例如Disqus。最关键的是jekyll可以免费部署在Github上,而且可以绑定自己的域名。jekyll让我们专注于文章本身,而不是html。
提示:【配置环境】主要是为了在本地开发调试,比如当你使用别人的主题并做出了修改,可以立即在本地看到改变后的结果,当你发表博文时也可
以先在本地预览。但【配置环境】并不是必须的,因为Github Pages与jekyll深度结合,你可以将修改后的结果直接push到
username.github.io仓库,然后访问https://username.github.io,也可以看到你刚才修改过的结果,只是这样没有先本地预览,再push到
github快捷。对于新手来说配置环境会遇到很多问题,所以如果你遇到问题而又解决不了,不妨跳过配置环境的步骤,直接将修改push到github,
然后继续修改,继续push,直到自己满意为止,等你了解到一定程度再回过头配置环境,会更容易的解决问题,因为有很多人不是被编程本身难倒,
而是配置环境时过不去,毕竟万事开头难。
安装Ruby开发环境和jekyll
jekyll是由Ruby脚本语言编写的,所以在运行jekyll之前,需要先安装Ruby运行环境。
- 下载RubyInstaller for Windows,下载Ruby+Devkit的版本,减少后面报错的机会

- 然后运行
ridk install以添加必需的开发工具 - 打开cmd命令窗口,执行
gem install jekyll bundler安装jekyll和bundler - 查看是否正确安装了jekyll:
jekyll -v
这里有一个jekyll官方提供的Windows安装jekyll的过程,可供参考
生成本地站点并运行
- 切换到某个目录:在cmd命令行窗口中,用cd命令切换到一个目录,比如我切换到桌面(Logan是我的用户名)

- 使用默认模板新建项目:使用
jekyll new 项目名命令创建一个项目,比如我创建了一个名为blog的项目,创建好后是一个文件夹,位置在桌面

这是文件夹里的内容

- 生成静态站点:
cd blog切换到blog目录下,运行jekyll serve生成静态站点,此时可能会报错,错误类型为Bundler::GemNotFound,比如我这里遇到的错误如下:

根据提示,错误是缺少名为tzinfo的gem导致的(如果是缺少其他gem,解决方法是一样的,把gem名字换一下就行),使用gem list查看是否下载了此gem,如果查询结果里没有此gem,使用gem install tzinfo安装此gem

安装成功后在此执行jekyll serve,我这里继续报错了,错误提示和上面的相同,打开blog目录下Gemfile文件

这里的意思是,我们创建的blog项目需要依赖名为tzinfo的gem,且版本>=1.2,<2.0(~>的意义请看这里),而我们刚刚安装的版本为2.0版本,所以将Gemfile文件里的版本修改为我们下载的版本,下图为修后的内容

保存之后,再次运行jekyll serve,得到下面结果,说明我们已经成功生成了站点

我们打开blog文件夹,里面多了一个名为_site的文件夹,这里面就是jekyll帮我们生成的整个静态站点内容

- 本地运行:在浏览器输入
http://127.0.0.1:4000/,就可以看见jekyll生成的默认站点的内容了

在配置环境的过程中,很有可能遇到其他问题,尝试复制错误信息,用搜索引擎搜索,看是否已有解决方法,如果你试了很多次还是不行,请直接在我的项目的Issues里提问,或者按我开头说的提示走,跳过配置环境这一步,不要被配置环境难倒。
使用模板
获取模板
在前面,我们使用jekyll默认模板创建了一个静态站点,离我们心目中一个漂亮的博客差距还很大,对于我们新手来说,最好的选择是选择一个前辈写好的博客模板,然后加上我们自己的修改,变成我们自己心目中的博客,等我们完全了解了整个运行过程,这时候如果想自己重新写一个模板,会更容易,现在要做的是站在前辈的肩膀上。如果你喜欢我的博客的样子,可以先下载我的源码,再修改成你喜欢的样子。如果你使用过git可以用下面命令clone我的源码到你本地的仓库
git clone https://github.com/sslogan666/sslogan666.github.io.git
还可以直接下载源码压缩包,之后解压到一个目录里。
本地运行博客
然后打开cmd命令行,用cd命令切换到解压项目目录,执行jekyll serve,此时很有可能会再次遇到Bundler::GemNotFound的错误,可以按照前面解决错误的方式尝试解决,还可以执行bundle install命令,此命令可以将Gemfile文件中列出的所有依赖的gem全部安装,然后再次执行jekyll serve命令,可能还会遇到Gem::LoadError,根据错误提示,执行bundle exec jekyll serve便不再报错。运行成功之后,在浏览器输入http://127.0.0.1:4000/便可以看到我的网站。
发布博客到github
如果你没有把环境配置成功,不要气馁,先在自己的github上创建一个uername.github.io名称的仓库,将username修改为你的github的用户名,然后将刚才下载解压后的项目文件夹名称改为uername.github.io,然后执行下面命令,将本地代码push到github,然后打开浏览器访问https://username.github.io,首次访问,可能需要10分钟左右后,才能访问到,喝杯茶,耐心等待
jekyll搭建个人博客1的更多相关文章
- 使用 github + jekyll 搭建个人博客
github + jekyll 本地写markdown,然后push到github,就成了博客 其实我一早就知道这两者可以搭建个人博客,因为本人有个很好的习惯——每天都会去看看一些热门文章,了解行业最 ...
- 【环境搭建】使用Jekyll搭建Github博客
前言 昨天花了差不多一天的时间,使用Jekyll搭建起了一套Github博客,感觉不错,也特将搭建过程记录下来,方便有需要的朋友自行搭建. 搭建步骤 本环境是在Linux环境下搭建完成的 安装前建议使 ...
- 使用GitHub Pages+Jekyll搭建个人博客
GitHub Pages 免费无限容量的站点数据托管工具(国内访问速度较慢),内置Jekyll服务,能将特定名称的代码仓库动态编译为静态网页 Jekyll 基于Ruby的静态网页生成系统,采用模板将M ...
- 使用github与jekyll搭建个人博客(一)
虽然使用博客园还没有多久,但是最近看到一些大神的博客觉得很是炫酷.于是突发奇想,想要搭建自己的博客站点儿.编程菜鸟一枚,还是想要记录下最近的搭建博客经历. 使用github搭建个人博客的方式有很多,百 ...
- 使用github+jekyll搭建个人博客
聊聊起初 每次看到大牛们的博客,都会激起一颗一定要搭建自己博客的心,毕竟有着一颗向大牛们看齐的心.但是一直不知道如何下手,从最初的csdn写写博客到在github上建立仓库写代码分享,虽然也能够记录一 ...
- Jekyll搭建个人博客
网上也有HEXO 搭建的博客,有人说使用 HEXO 在多台电脑上发布博客,操作起来并不是那么方便,所以使用Jekyll 来搭建. Jekyll配置 1,安装ruby环境 Windows系统使用Ruby ...
- Jekyll搭建个人博客-拓展版
关于Jekyll Jekyll 是一个简单的博客形态的静态站点生产机器.它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown (或者 Textile) 以及 Liquid 转化成一个完 ...
- jekyll搭建个人博客2
目录 个性化 jekyll目录结构 修改个人信息 修改头像 修改背景颜色 关于头像的效果 图片问题 域名 个性化 jekyll目录结构 个性化就是要对文件内容作出修改,使得博客外观发生变化,在修改文件 ...
- jekyll+github搭建个人博客总结
jekyll+github搭建个人博客 经过一天多的折腾,终于算是搭建好了自己的个人博客,看到有些社区评论说:在windows下用jekyll搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...
随机推荐
- 2013年新年礼物---CrossFPC 终于出来了
2012年12月份,玛雅人的预言没有实现,一个内部进行了7年开发的CrossFPC 终于见光了. 网址:http://www.crossfpc.com/ Welcome to CrossFPC, a ...
- 小记Linux下对mac80211内核模块修改
mac80211内核模块实现了对802.11协议的处理过程.其中mlme.c文件中的内容实现了对Deauth管理帧的处理.考虑到Deauth攻击至今仍没有好的防御方法(据说有802.11w,可是我一直 ...
- ReportViewer,RDLC 报表开发之个性化样式
原文:ReportViewer,RDLC 报表开发之个性化样式 报表开发中,客户对样式提出了要求: 1.工具栏上显示每页条数 2.只导出Excel,不需要下拉菜单. 3.报表上显示的图表,分页时,每页 ...
- Android零碎知识之Style and Theme
Android的styles资源文件中存在了我们在应用中定义的各种style,它们都是以style开始的元素,包含许多属性的集合.但我们一般般它们分为style和theme,那它们有什么区别呢? 一. ...
- JS 浮点加减乘除运算
//浮点数加法运算 function FloatAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1]. ...
- .NET重思(一)sealed和interface
博主这几天正好闲着,砸砸基础,毕竟自学,基础不牢靠很致命,要踏实啊~~~ 1.sealed关键字修饰一个类,也可以修饰实现方法或者属性.当sealed用于修饰一个类时,这个类不可以被继承,因此,这个类 ...
- Azure 云助手主要功能
实时查询: 实时查询Azure云服务的用量和账单,还可以将重点服务固定在首页“我的监控”页面,方便快速查看. 随时管控: 随时随地对云服务管理和配置(例如,重启.更改虚拟机). 多个账户: 随心切换多 ...
- QT中Dialog的使用(使用QStackedWidget维护页面切换)
先看看效果图: pages.h #ifndef PAGES_H #define PAGES_H #include <QWidget> class ConfigurationPage : p ...
- 发布Qt Quick桌面应用程序的方法(使得planets在XP上运行)
发布Qt Quick桌面应用程序的方法 Qt是一款优秀的跨平台开发框架,它可以在桌面.移动平台以及嵌入式平台上运行.目前Qt 5介绍程序发布的文章帖子比较少.大家又非常想要知道如何发布Qt应用程序,于 ...
- Python基础(六) 函数
.函数 函数是对动作的封装 2.1函数的基本结构 #函数的定义 def 函数名(): #函数提 pass #函数的执行 函数名() 2.2参数初识 #形参 def hanshu(aaa): #参数相当 ...