↑↑↑点击上方“蓝字”,关注“视学算法”

如果你喜欢我,可以把我置顶或加为星标

题图:by ben.pinto from Instagram

阅读文本大概需要 9 分钟。

1.评估 Github Pages 方案

前面说到几种博客方案,我都玩过,可以说是各有各的特点与优势。在你考虑选择是否 Github Pages 方案之前,可以先了解其优缺点,然后根据自己情况加一判定。
•优点:
1.完全免费。因为它本质上是一个 Github 仓库,只不过 Github 官方提供网页寄存服务。
2.简单省心。无须自己购买云服务,也不需要关系环境搭建、系统维护等,我们只需专注写作。
3.带宽够用。在使用的时候项目和网站的大小不要超过 1GB,也不要过于频繁的更新网站的内容(每小时不超过 10 个版本),每个月的也要注意带宽使用上限为 100GB。这些对于个人网站其实是够用。
•缺点:
1.它是静态网站,无法支持数据库,涉及一些数据存储的操作需要自己找其他解决方案。例如页面浏览的阅读人数统计、点赞数等。
2.访问速度比较慢。我们的网站是寄托在 Github 网站上,Github 服务器节点是在美国,所以访问速度没有国内主机快。
以上是我对于 Github Pages 方案的理解。如果你已经确认选择 Github Pages 方案,继续跟着猴哥的思路,一步步搭建属于自己的博客。

2.创建简单页面

首先需要注册一个 GitHub 账号,然后到个人主界面里面,创建一个新的 Repository。

进入创建新仓库页面后,在 Repository name 的位置填写域名,格式是 username.GitHub.io。我的 Github 的 id 是 monkey-soft,所以域名如下图所示。

创建成功后,点击 settings 栏目。

接着找到 GitHub Pages,然后随便选择 Github 提供的默认主题。

最后,我们通过浏览器访问仓库的域名(monkey.github.io)就能看到系统创建的默认网页。

3.Jekyll 主题选择

上文讲到选择默认的主题,这里都是 Jekyll 主题。那什么是 Jeklly呢?它是一个简单静态站点生成器,能将纯文本的(一般是 Markdown 文件)转化为静态页面。有趣的是,Jeklly 是由 GitHub 的联合创始人 Tom Preston-Werner 基于 Ruby 语言编写的。因此,GitHub 官方默认采用 Jeklly 来生成网页内容。
原生的 Jeklly 主题过于简单,如果自己想进行改造,工作量还蛮大的。通常比较方便的做法是利用其他作者制作的主题。猴哥找到三个 Jeklly 主题网站,分别是:
•http://jekyllthemes.org
•https://jekyllthemes.io
•http://themes.jekyllrc.org
你可以根据个人喜好选择适合的主题。我找到一款名为 MatJek 的主题,将主题压缩包下载到本地。

主题下载之后,我们需要把主题文件同步到我们的网站,也就是远程的 Github 仓库。如果你熟悉 Git 用法,可以使用 clone 命令将 Github 仓库下载到本地。
如果你没有任何 Git 的基础,也不想进行一些繁琐的配置,那么推荐使用桌面客户端的形式进行管理。我们需要下载 GitHub 桌面客户端,然后登录自己 Github 账号,接着将仓库拉取到本地。注意的是,存储路径不能有中文

找到仓库存放的文件夹,将之前所有文件全部删除,把刚才下载的主题文件复制到当前文件夹中。

我们还需要修改配置文件。_config.yml 是 Jekyll 的全局配置文件。里面记录着网站的名字,网站的域名,网站的链接格式等等。
我对于原来的 MatJek 主题进行一些定制化需求,整合起来更像是一个博客网站。这里我以自己修改主题的配置文件为例。如果你使用其他主题,根据作者的要求,修改 _config.yml 的内容即可。

最后一步,我们将刚才修改的内容同步到 Github 远程仓库。

完成以上操作,我们可以打开浏览器,输入我们仓库地址访问我们的网站。

该主题是猴哥基于 MatJek 主题进行修改,同时也修复几个缺陷。如果你想获取猴哥同款主题,在公众号后台回复『主题』即可获取。

4.Jekyll 本地环境搭建

如果我们想对主题界面进行修改,每次预览界面需要将文件同步到 Github 仓库,这样操作不太方便。因此,我们可以本地搭建个 Jeklly 环境,方便我们调试。
因为 Jeklly 是基于 Ruby 语言编写的,所以我们需要安装 Ruby 环境。我以 Windows 环境下安装为例,Mac 环境比较简单,可以执行搜索搞定。
首先,我们到 Ruby 下载安装包,最好下载带有包管理工具 devkit,方便后续安装各种组件。
安装 Ruby 之后,会弹出提示安装 MSYS。MSYS 是 Windows 上模拟 GUN 环境的组件。这里选择选项 3 进行安装。

进入到本地项目文件中,启动终端,依次执行以下命令。

~ $ gem install jekyll bundler
~ $ bundle install
~ $ bundle exec jekyll serve  # 启动本地服务器

然后打开浏览器,访问 http://localhost:4000 就能预览本地网站的界面效果。

5.SEO 优化

该主题已经集成用于 SEO 优化的 jekyll-seo-tag 插件,我们简单修改 _config.yml 里面的这几个字段。
•title(博客主题)
•subtitle(博客副标题)
•description(网站描述,尽量增加跟网站内容的关键字)
接着是优化网站文章的 URL 链接。默认 Jeklly 的 URL 的 Path 路径是 /:year/:month/:day/:title,显示效果如/2019/11/12/我的第一篇文章.html。这种固定链接不太理想。
猴哥总结 URL 地址的 SEO 优化三个原则:
1.日期需要出现在固定链接中。
这基于两个方面的考虑。一是如果数字出现在固定链接里面,等于提醒搜索引擎,这是很旧的内容了,没必要再爬一遍了。另外一个原因是,假如你要修改文章的日期重新发布的话,链接地址就变了,也就是意味着你的反向链接,PR 等等都没有了。
2.链接的层次不要太深
默认的固定链接是 /年/月/日/文章名。这种层次过深,不方便搜索引擎爬虫的抓取,对搜索引擎的收录不太友好。
3.链接中不要出现中文 
虽然现在的搜索引擎已经能识别URL地址里面的中文字符, 但无论是从美观上,以及中文字符会被转义的角度上看,都是非常差的。
猴哥推荐两种固定链接方案。一种是 /postname/,基于文章的英文单词翻译;另一种是 /post_id/,基于文章发布的 ID 号。
因为是静态网站,所以必须按照 Jeklly 的规范来设置 URL,第一种方式也就被排除,只能选择第二种方案。Jeklly 提供的路径变量只有几个,不够灵活。
最后我花费九牛二虎之力,翻阅 Jeklly 中文网站,找到一个伪 postid 的方案。Path 路径设置为 /:short_year:i_month:i_day.html, 即利用日期的部分字段来拼凑。
这里我进行讲解下。比如一篇文章于 2017-06-25 发布的,Jeklly 会将年前面两位去掉;月份如果是10月之前去掉数字 0,没有则直接保留月份;日跟月份一样会去掉数字 0;因此,最后的 Path 路径是 17625.html。

6.发布文章

网站主题搭建工作完成之后,我们就能往博客上填充内容。文章一般是用 Markdown 语法编写的,存放在 _posts 文件中。

文件的命名规则是:年-月-日-文章标题.md

在 md 文件中,必须带上头部信息才能被识别出来,其中信息有文章标题、编写时间、分类、标签等。

我的设想是在首先展示文章时会显示封面图片,我在文件中创建一个名为 img 文件夹来存放封面图片,图片命名须方式是以日期的形式。
当一切工作完成就绪,我们就可以使用 Github 客户端将内容推送到远程仓库。
剧透一下,下篇分享 Github Pages 结合 Hexo 搭建博客网站方案。
如果你觉得文章不错,请转发分享给你的小伙伴们~。
- END -
如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「perfect_iscas」,关注后回复「进群」或者扫描下方二维码即可进入无广告技术交流群。
扫描二维码进群↓

在看 

利用Github+Jeklly搭建个人博客网站相关推荐

  1. 个人博客网站建设_利用Github+Jeklly搭建个人博客网站

    题图:by ben.pinto from Instagram 阅读文本大概需要 9 分钟. 在上篇文章<个人博客如何选型?>中讲到,可以利用 Github Pages 来搭建个人博客网站, ...

  2. github上能找到中文博主吗_利用Github+Jeklly搭建个人博客网站

    题图:by ben.pinto from Instagram 阅读文本大概需要 9 分钟. 在上篇文章<个人博客如何选型?>中讲到,可以利用 Github Pages 来搭建个人博客网站, ...

  3. 利用Github Page 搭建个人博客网站

    利用Github Page 搭建个人博客网站 转载请注明出处: http://blog.csdn.net/tzs_1041218129/article/details/53214497 http:// ...

  4. github项目怎么运行_利用 GitHub 从零开始搭建一个博客

    "NightTeam",一个值得加星标的公众号. 趁着周末,搭建了一下 NightTeam 的官方博客和官方主页,耗时数个小时,两个站点终于完工了. 由于 NightTeam 的域 ...

  5. 利用 GitHub 从零开始搭建一个博客

    "NightTeam",一个值得加星标的公众号. 趁着周末,搭建了一下 NightTeam 的官方博客和官方主页,耗时数个小时,两个站点终于完工了. 由于 NightTeam 的域 ...

  6. 如何利用 GitHub 从零开始搭建一个博客

    趁着周末,搭建了一下 NightTeam 的官方博客和官方主页,耗时数个小时,两个站点终于完工了. 由于 NightTeam 的域名是 nightteam.cn,所以这里官方博客使用了二级域名 blo ...

  7. 利用Github+Jekyll搭建个人博客

    前言 拥有一个个人博客基本上已经接近是开发者的标配之一了,在博客中记录自己的学习过程,分享自己的经验总结,也是促进自己技术成长的重要途径.当前有许多种创建个人博客的方式可以选择,如选择专业的博客网站提 ...

  8. 使用hexo+github免费搭建个人博客网站超详细教程

    博客地址http://dymfx.top/ 本文详细描述了如何在Github上,使用hexo部署博客. 一.Hexo简介 Hexo是一个快速.简洁且高效的博客框架,让上百个页面在几秒内瞬间完成渲染,H ...

  9. 用Pelican+Github搭建个人博客网站

    Title: 用Pelican+Github搭建个人博客网站 Date: 2017-06-4 19:13 Category: 技术博客 Modified: 2018-10-11 19:03 Tags: ...

最新文章

  1. 20165301第十周课下补做
  2. 【实验】不会部署VRRP?看完就会了
  3. AGC016B Colorful Hats(构造)
  4. 腾讯为什么也做操作系统?
  5. python用二分法求平方根_Python使用二分法求平方根的简单示例
  6. 登录失败时记住访问的地址
  7. 利用OpenCV的Haar特征目标检测方法进行人脸识别的尝试(一)
  8. linux教程第五版第三章课后答案,linux 第三章 章习题.doc
  9. OpenCV3学习(12.3) kalman滤波器
  10. 小米Air3笔记本拆机踩坑教程
  11. 盛金公式解一元三次方程_一元三次方程的解法
  12. react-custom-scrollbars滚动组件
  13. junit5_JUnit 5测试中的临时目录
  14. 谷歌浏览器能打开网页微信_Chrome浏览器打开微信页面-Go语言中文社区
  15. 计算机网络原理自考挂科率,3个“挂科率高”的专业,补考更是难上加难,看你专业上榜了吗...
  16. MSD3393/MSD3463 屏参及REG对照表
  17. 点击微信公众号菜单按钮 跳转网页授权登录
  18. mysql字符集mysqldump_Mysqldump 字符集问题
  19. session-based recommendation的两个模型对比NARM, STAMP
  20. 基于WPF的桌面宠物开发(一) :WPF简介+环境搭建+简单界面

热门文章

  1. qtdll在linux系统运行,在QT下编写带DLL的程序
  2. Facebook是如何做搜索的?
  3. 信息保留的二值神经网络IR-Net,落地性能和实用性俱佳 | CVPR 2020
  4. 飞天AI平台到底哪里与众不同?听听它的架构者怎么说
  5. 百度自动驾驶新突破:获首批T4牌照,升级Apollo 5.0,将进行复杂城市场景路测...
  6. 首发 | 13篇京东CVPR 2019论文!你值得一读~ 技术头条
  7. 为了智能驾驶,李彦宏要改造城市道路了!
  8. 与其撩妹尬舞,倒不如跟AI学跳舞
  9. “打脸”世界杯:AI界没有预测比赛的章鱼保罗
  10. 蓝绿发布、滚动发布、灰度发布,有什么区别?这下明白了