配置环境

简介

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运行环境。

  • 然后运行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的更多相关文章

  1. 使用 github + jekyll 搭建个人博客

    github + jekyll 本地写markdown,然后push到github,就成了博客 其实我一早就知道这两者可以搭建个人博客,因为本人有个很好的习惯——每天都会去看看一些热门文章,了解行业最 ...

  2. 【环境搭建】使用Jekyll搭建Github博客

    前言 昨天花了差不多一天的时间,使用Jekyll搭建起了一套Github博客,感觉不错,也特将搭建过程记录下来,方便有需要的朋友自行搭建. 搭建步骤 本环境是在Linux环境下搭建完成的 安装前建议使 ...

  3. 使用GitHub Pages+Jekyll搭建个人博客

    GitHub Pages 免费无限容量的站点数据托管工具(国内访问速度较慢),内置Jekyll服务,能将特定名称的代码仓库动态编译为静态网页 Jekyll 基于Ruby的静态网页生成系统,采用模板将M ...

  4. 使用github与jekyll搭建个人博客(一)

    虽然使用博客园还没有多久,但是最近看到一些大神的博客觉得很是炫酷.于是突发奇想,想要搭建自己的博客站点儿.编程菜鸟一枚,还是想要记录下最近的搭建博客经历. 使用github搭建个人博客的方式有很多,百 ...

  5. 使用github+jekyll搭建个人博客

    聊聊起初 每次看到大牛们的博客,都会激起一颗一定要搭建自己博客的心,毕竟有着一颗向大牛们看齐的心.但是一直不知道如何下手,从最初的csdn写写博客到在github上建立仓库写代码分享,虽然也能够记录一 ...

  6. Jekyll搭建个人博客

    网上也有HEXO 搭建的博客,有人说使用 HEXO 在多台电脑上发布博客,操作起来并不是那么方便,所以使用Jekyll 来搭建. Jekyll配置 1,安装ruby环境 Windows系统使用Ruby ...

  7. Jekyll搭建个人博客-拓展版

    关于Jekyll Jekyll 是一个简单的博客形态的静态站点生产机器.它有一个模版目录,其中包含原始文本格式的文档,通过 Markdown (或者 Textile) 以及 Liquid 转化成一个完 ...

  8. jekyll搭建个人博客2

    目录 个性化 jekyll目录结构 修改个人信息 修改头像 修改背景颜色 关于头像的效果 图片问题 域名 个性化 jekyll目录结构 个性化就是要对文件内容作出修改,使得博客外观发生变化,在修改文件 ...

  9. jekyll+github搭建个人博客总结

    jekyll+github搭建个人博客 经过一天多的折腾,终于算是搭建好了自己的个人博客,看到有些社区评论说:在windows下用jekyll搭建静态博客,简直就自讨苦吃,但是都到一半了,有什么办法呢 ...

随机推荐

  1. miniui处理多重子表级联,一次性提交多表数据的ui要点

    在一个ui界面上 有a,b,c三个表 a表只有一条记录,b表有多条记录,c表有多条记录 b是a的子表,c是b的子表 都是一对多关系 一次性下载相关联的c表记录 然后mini-datagrid采用cli ...

  2. 使用tratto进行CISCO网络设备的管理

    测试环境: CSR1000V CentOS7.4 X64 Step 1:在CentOS7上安装python 3.0环境 [root@docker ~]# python3 -VPython 3.7.0[ ...

  3. Windows 10开发基础——文件、文件夹和库(二)

    主要内容: 使用选取器打开和保存文件 关于文件.文件夹和库,如果深究其实还是有比较多的内容,我们这一次来学习一下选取器就收了.还有上篇博文中读写文本文件的三种方式可以细细体会一下. 文件选取器包含文件 ...

  4. SpringMvc 资料

    web.xml解释 http://www.cnblogs.com/superjt/p/3309255.html url-pattern解释 http://www.cnblogs.com/zhangpe ...

  5. SqlServer删除复制监视器中无效的发布名称

    原文:SqlServer删除复制监视器中无效的发布名称 在服务器复制监视器中有一个发布名称,因为该发布订阅已经删除. ReportServerTempDB只有一个发布,已无效,打算删除. --直接删除 ...

  6. LINQ查询表达式---------let子句

    LINQ查询表达式---------let子句 let子句创建一个范围变量来存储结果,变量被创建后,不能修改或把其他表达式的结果重新赋值给它.此范围变量可以再后续的LINQ子句中使用. class P ...

  7. 【转载】动态载入DLL所需要的三个函数详解(LoadLibrary,GetProcAddress,FreeLibrary)

    原文地址:https://www.cnblogs.com/westsoft/p/5936092.html 动态载入 DLL 动态载入方式是指在编译之前并不知道将会调用哪些 DLL 函数, 完全是在运行 ...

  8. WebRequest请求错误(服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF)

    WebRequest请求错误(服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF)解决办法,天津config文件,增加一个配置如下 <?x ...

  9. dpkg:处理 xxx (--configure)时出错解决方案

    出现问题如下: 正在设置 nfs-common (1:1.2.2-4ubuntu5) ... dpkg:处理 nfs-common (--configure)时出错:  子进程 已安装 post-in ...

  10. spring3升级到spring4通用异常处理返回jsonp多了/**/的解决办法

    问题描述 在spring3中定义了通用的异常处理,具体代码如下: public class CommonExceptionHandler implements HandlerExceptionReso ...