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搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...
随机推荐
- 深入理解SQL Server 2005 中的 COLUMNS_UPDATED函数
原文:深入理解SQL Server 2005 中的 COLUMNS_UPDATED函数 概述 COLUMNS_UPDATED函数能够出现在INSERT或UPDATE触发器中AS关键字后的任何位置,用来 ...
- Android零基础入门第28节:轻松掌握RelativeLayout相对布局
原文:Android零基础入门第28节:轻松掌握RelativeLayout相对布局 在前面三期中我们对LinearLayout进行了详细的解析,LinearLayout也是我们用的比较多的一个布局. ...
- Android零基础入门第1节:Android的前世今生
原文:Android零基础入门第1节:Android的前世今生 现在网上有很多各色Android资料了,但相对来说还是比较零散,Android覆盖的范围极广,最近刚好有机会全部拉通整理一遍,也保存起来 ...
- Android零基础入门第38节:初识Adapter
原文:Android零基础入门第38节:初识Adapter 在上一节一起了解了ListView的简单使用,那么本节继续来学习与ListView有着千丝万缕的Adapter. 一.了解MVC模式 在开始 ...
- 核心思想:自由职业的所谓自由,必须先职业,然后才能自由(还要对抗自己的惰性,提前寻找客户)good
除了前面提到的专业性,还要足够自律,能够管理好自己的时间和精力. 具体来说,需要目标管理和时间(精力)管理. 所谓目标管理,对于自由职业者来讲,就是要识别出自己最擅长的方向,确立自己可以提供的最有价值 ...
- SAP TABLECONTROL 自定义SEARCH HELP
项目上需要开发一个界面如下的应用程序.这是一个MB1A发料的辅助程序,限制住移动类型和在特定字段写入产品号. 这个应用程序的主要功能毫无疑问是通过BAPI实现的.但在TABLECONTROL中需要对填 ...
- Java基础(四) StringBuffer、StringBuilder原理浅析
StringBuilder与StringBuffer作用就是用来处理字符串,但String类本身也具备很多方法可以用来处理字符串,那么为什么还要引入这两个类呢? 关于String的讲解请看Java基础 ...
- 从零开始实现放置游戏(七)——实现挂机战斗(5)RMS系统后台参数校验
前面几章实现了在RMS系统中进行数据的增删查改以及通过Excel批量导入.但仍有遗留的问题,比如在新增或编辑时,怪物的生命值.护甲等数据我们可以输入负值,这种数据是不合理且没有意义的.本章我们就实现服 ...
- CQRS之旅——旅程7(增加弹性和优化性能)
旅程7:增加弹性和优化性能 到达旅程的终点:最后的任务. "你不能飞的像一只长着鹪鹩翅膀的老鹰那样."亨利·哈德逊 我们旅程的最后阶段的三个主要目标是使系统对故障更具弹性,提高UI ...
- git的基本指令
更多详情请看廖雪峰官方网站 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 1.删 ...