用GitHub Pages免费空间搭建Blog
前言
其实之前就知道可以用GitHub Pages搭建静态博客,不过之前一直忙着爬手册撸代码==,昨天终于把前端各种手册里的入门教程撸的差不多了(CSS布局撸的我要吐了好嘛),于是把代码什么的放一放,来折腾静态博客吧!
准备
GitHub Pages本来是给托管在GitHub的项目的介绍页面留的空间,由于其空间是免费的,拿来搭个博客真心不错。但是,一般的Blog CMS都是非静态的,而如果我们要用静态空间搭博客,那就只能自己动手切页面或者使用为这种静态空间设计的博客管理工具。
这种博客管理工具用的比较多的应该算是Jekyll以及HEXO了,一开始在折腾Jekyll时,可能由于gem的兼容问题,出现了一个特别奇葩的依赖包明明安装好却找不到的问题,而且搜了很久也没找到解决方法,倒是在StackOverflow找到了一个同病相怜的Mac用户==不过今天在完成了hexo的配置后又试了了下Jekyll,居然又没问题了!但我不会再爱你了!!!
我也建议使用Jekyll或者hexo,这两个用户比较多,教程和问题解决方案也比较多。接下来我要分享的是hexo的安装过程。
过程
关于这方面的教程还是很多的,百度或者谷歌下一大把,但是在搜索教程时一定要注意教程的日期,由于版本差异,有些教程的部分步骤可能会导致乱七八糟的报错。另外一点就是遇到报错第一反应应该就是去搜索报错信息,一般情况下你遇到的问题已经有无数人遇到过了,搜索引擎可以帮助你找到他们的解决方案。最后,如果有耐心,还是建议看官方文档,官方文档才是最详细的!
由于教程很多,我这里就不重复了,直接把我看过的觉得有用的教程贴出来吧。建议先看一篇完整的,理清头绪,然后再一步一步来,“遇到问题->解决问题->下一步” 的重复。
参考资料:
Creating Project Pages manually - User Documentation
Hexo
Hexo 静态博客使用指南 - 简书
hexo常用命令笔记 - SegmentFault
如何搭建一个独立博客——简明Github Pages与Hexo教程 - poem_of_sunshine的专栏 - 博客频道 - CSDN.NET
搭建 hexo,在执行 hexo deploy 后,出现 error deployer not found:github 的错误 - V2EX
进阶
注册免费域名:
新版Freenom免费域名TK,CF,ML,GA申请注册方法_百度经验
Freenom(不稳定,最好自备梯子。)域名解析:
成功注册.ML免费顶级域名和添加DNS域名解析绑定空间方法 | 免费资源部落
DNSpod
如何搭建一个独立博客——简明Github Pages与Hexo教程 - poem_of_sunshine的专栏 - 博客频道 - CSDN.NET添加评论功能:
我用的是国内的“多说”
Hexo使用多说教程 - 多说开发者中心
Hexo 主题Light修改教程 - 简书添加访问统计:
由于大家都懂的操蛋的原因,谷歌统计在国内会大姨妈,我用的是百度站长统计
hexo 添加百度统计 | Just For Fun
百度统计——最大的中文网站分析平台使用谷歌字体镜像站:
和上面一样的原因。使用镜像站可以提速很多。作为一名数字黑,不得不说数字家的字体镜像还是很好用的。
360网站卫士常用前端公共库CDN服务
我用的是light主题,不清楚其他主题会不会是不同的地方,但是大体步骤是一样的,修改了两处:
1.\themes\light\source\css_base\variable.styl的第14行改为
@import url("//fonts.useso.com/css?family=Lato:400,400italic")
2.\themes\light\layout_partial\after_footer.ejs的第一行中js引用地址改为
"//ajax.useso.com/ajax/libs/jquery/2.0.3/jquery.min.js"
其实总结下就是把谷歌的字体地址都改成数字的。配合浏览器的开发者模式看还有没有用到谷歌的,如果还有慢慢找出来改掉就行了。修改网站ico
\themes\light\layout_partial\head.ejs中有这样一行代码:
‹link href="<%- config.root %>favicon.ico" rel="icon"›
所以很明显啦,只要在根目录下放一个favicon.ico图标就可以了,也就是放在\source文件夹下,hexo生成时会自动添加到网站根目录下。
当然你也可以选择不修改文件名,把head.ejs中的favicon.ico改成你的图标的文件名也可。
再送个工具:制作ico图标 | 在线ico图标转换工具 方便制作favicon.ico - 比特虫 - Bitbug.net添加导航
例如我的博客添加的About导航:
hexo怎么在菜单上添加页面和分类呢? - SegmentFault添加RSS订阅以及网站地图
Hexo 入门指南(六) - sitemap、rss 和部署_百度经验
如果上述指令无效,在指令后添加--save,npm install ‹name› --save表示安装的同时,将信息写入package.json中。
如果想和我一样把RSS放进导航,那么修改主题的_config.yml文件,在menu里添加RSS: /atom.xml。对,这时候你应该注意点了吧,其实menu:就是对应的导航==
总结
我暂时就折腾了这么多,准备有时间来写个主题,证明下前端没白学==
有问题如果搜索后依然无解可以问我试试→_→
用GitHub Pages免费空间搭建Blog的更多相关文章
- 利用github Pages和Jekyll搭建blog实践1
你必须要懂一点git和网页开发.安装了git,并且有github账户. github设计了Pages功能,允许用户自定义项目首页 github提供模板,允许站内生成网页,但也允许用户自己编写网页,然后 ...
- 使用Jekyll + GitHub Pages免费搭建个人博客
使用Jekyll + GitHub Pages免费搭建个人博客 My Blog:无名の辈 | VectorX (vectorxxxx.github.io) Download Ruby:Download ...
- 利用GitHub Pages和Hexo搭建个人博客
本文首发地址: 非生异也 本项目源码托管在GitHub上 Why 阮一峰曾经说过:喜欢写Blog的人,会经历3个阶段. 第一阶段,刚接触Blog,觉得很新鲜,试着选择一个免费空间来写. 第二阶段,发现 ...
- windows下github pages + hexo next 搭建个人博客
一.github pages 搭建个人博客一般需要购买域名和空间,github pages为我们提供了这两样东西,而且是免费的,相关介绍和使用方法参考这里 github pages. 二.Hexo 一 ...
- 使用GitHub Pages + docsify快速搭建一个站点
话不多说,先看效果: https://bytesfly.github.io/blog 为什么需要一个站点 肯定有人会问,既然有类似 博客园 这样优秀的平台来写博客,为什么还需要自己搭建站点呢? 放在G ...
- 利用GitHub Pages + jekyll快速搭建个人博客
前言 想搭建自己博客很久了(虽然搭了也不见得能产出多频繁). 最初萌生想写自己博客的想法,想象中,是自己一行一行码出来的成品,对众多快速构建+模板式搭建不屑一顾,也是那段时间给闲的,从前后端选型.数据 ...
- Github pages博客搭建与域名绑定
Github Page github page是由用户编写的托管在github上的静态网页,为了搭建一个个人博客,我们可以租用一个云服务器然后部署我们的博客项目,常见的比如wordpress,像wp这 ...
- github文件上传及github pages博客搭建教程
一.与github建立连接 1.安装node.js和git 2.桌面新建文件夹[github],右键“git bash here” 3.注册github账号,新建仓库“new repository”, ...
- 使用github pages, hexo搭建个人博客教程
具体的原理性的东西就不说了直接上教程,怕等下自己忘了. 一. github 阶段 申请一个github 账号并成功登录进去. 创建一个名字为xxx.github.io的空项目. 二. hexo 阶段 ...
随机推荐
- Arrays.fill方法的陷阱
昨晚调试程序时发现的,该方法不能初始化二维数组,不过当时没有报CE,提交的时候也是WA:今早上单独测试该方法,也没有CE,不过运行时异常.切记
- 安装drupal练习网站遇到的问题
1 Skip #conjunction key in __clone() method of core/includes/database/query.inc 解决方案:https://www.dru ...
- 直接将视频文件原码流转换成YUV,输出到屏幕显示
#include "stdafx.h" #define inline _inline#ifndef INT64_C#define INT64_C(c) (c ## LL)#defi ...
- Java Random随机种子
第一种情况 Random rand = new Random(47); for(int i=0;i<10;i++) System.out.println(rand.nextInt(100)); ...
- Android sqlite数据库存取图片信息
Android sqlite数据库存取图片信息 存储图片:bitmap private byte[] getIconData(Bitmap bitmap){ int size = bitmap.get ...
- 【HDOJ】2386 Dart Challenge
纯粹母函数+滚动数组,水之. /* 2386 */ #include <iostream> #include <string> #include <map> #in ...
- poj3233
这道题其实算是把快速幂的思想用在多项式之中 A+A^2+A^3+…+A^n=(A+A^1…+A^[n/2])+A^[n/2](A+A+A^1…+A^[n/2])+n mod 2*A^n 然后就是打码的 ...
- 利用python分析nginx日志
最近在学习python,写了个脚本分析nginx日志,练练手.写得比较粗糙,但基本功能可以实现. 脚本功能:查找出当天访问次数前十位的IP,并获取该IP来源,并将分析结果发送邮件到指定邮箱. 实现前两 ...
- KK的新书《必然》对未来科技趋势的预言
是他第一次在<失控>中提示我们-- 要用生物学而不是机械学的角度看待这个世界. 是他第一次在<科技想要什么>提示我们-- 科技本身就是一个生命体. 而在新书<必然 ...
- HDU-2576 Tug of War
http://poj.org/problem?id=2576 二维数组01背包的变形. Tug of War Time Limit: 3000MS Memory Limit: 65536K Tot ...