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搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...
随机推荐
- Win8 Metro(C#)数字图像处理--2.72图像噪声
原文:Win8 Metro(C#)数字图像处理--2.72图像噪声 [函数名称] 噪声函数WriteableBitmap NoiseProcess(WriteableBitmap src, ...
- PHPEXCEL 不能输出中文内容,只显示空白
以他带的示例文件为例 01simple-download-xls.php // Add some data $objPHPExcel->setActiveSheetIndex(0) ...
- 零元学Expression Blend 4 - Chapter 24 以实作了解Cover Flow功能
原文:零元学Expression Blend 4 - Chapter 24 以实作了解Cover Flow功能 今天要介绍一个Silverlight Toolkit内好用且在图片展示操作上很常见的元件 ...
- Qt Widget 利用 Qt4.5 实现酷炫透明窗体
本文讲述的是Qt Widget 利用 Qt4.5 实现酷炫透明窗体,QWidget类中的每一个窗口部件都是矩形,并且它们按Z轴顺序排列的.一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分 ...
- Java8 的一些新特性总结
目前Java8已经发布很多个版本了,对于Java8中的新特性虽然有各位大神进行jdk8的英文特性文档翻译,但都太官方化语言,对照几篇翻译本人对新特性文档做一下总结,以帮助我和各位不了解Java8新特性 ...
- HTML 滚动条实现
##在对应的div中,添加overflow,固定高度为400px<div class="panel-body" style="height: 400px; over ...
- Delphi与Windows 7下的用户账户控制(UAC)机制(有可能需要取消enable runtime themes)
WIN7/WIN8/WIN10, Vista提供的UAC机制,它的主要目的是防止对于操作系统本身的恶意修改.对于Delphi程序的影响,UAC主要在于以下几点:1.由于UAC机制,Delphi对于系统 ...
- DelphiRemotePushSender
Sending iOS (and Android) remote push notifications from your Delphi service with the HTTP/2 protoco ...
- 函数式编程里的Materialization应该翻译成什么?
Materialization是函数式编程里的一个专业术语, 用于特指函数式编程中查询被实际执行并生成结果的这一过程. 首先, 搜了一下中文资料, 暂时没有对该词的中文翻译, CSDN\博客园\阿里 ...
- kubernetes使用http rest api访问集群之使用postman工具访问 apiserver
系列目录 前面一节我们介绍了使用curl命令行工具访问apiserver,命令行工具快速高效,但是对于输出非常长的内容查看不是特别方便,尤其终端界面输入的东西非常多的时候,过长的内容不是特别容易通过滚 ...