2018-06-27-diary-关于自建博客

世间千般好


分类 lifetime
标签 post 日记

2021-09-20

关于自建博客

那年我21,我想她也应该21~~~

大学的时候有段时间在玩BLOG,像这种花里胡哨的东西都是哪个人开始玩,然后出现人传人现象。

那段时间想选一个合适的网站用来写BLOG,对比了CSDN,博客园,新浪博客等。因为CSDN是专门做技术博客这块,而且它的编辑器支持Markdown语法,所以选择了CSDN。博客园也不错,之前百度一些问题的时候博客园博主的解答排名也挺靠前的,不过它的后台简洁(略丑)。其他比较不像是做技术行业的,大部分也不支持Markdown语法。segmentfault 是后面才出来的,所以当初没有考虑。

中间有段时间CSDN访问变得非常慢,后台居然登录不上去(后来知道这时候CSDN在改版,改版后界面变得华丽了),弄得挺不开心的,了解到github上有个pages功能,可以自建网站,还支持使用自己申请的域名,所以也玩了下。

前些日子和一个同事聊到,他也开始写博客了,不过他写博客的目的是类似记笔记吧。

自建站大致流程-嗯,只是大致流程

建站工具

现在有jekyll,Hexo等等一些静态建站工具,都可以选择,我也是因为github支持的是jekyll,所以才选了它。

寻找jekyll模板

一般不会自己编写一个模板,考虑找个现成的来修改。下面是几个找主题的几个地方:

我找了好几款,现在用的是hux的模板,之前用过 3-jkeyll , freshman21等等几款。

学习jekyll知识

对模板进行本地调试推荐极客学院的jekyll教程, 外国的就是官网 了。

基本懂一些jekyll知识即可,一般我本地调试用到下面两个命令

jekyll b // 构建
jekyll s // 运行

学习liquid语法(流语法)

因为jekyll中使用流语法,根据模板生成对应的页面,所以懂一些流语法还是需要的,比如你可能需要对日期进行格式化

2018-06-27 // 对日期进行格式化,详细参数参看liquide语法

找到模板后对模板进行修改,使之更符合自己的需求。推荐流语法中文文档 liquid语法

托管网站选择

GitHub

学习基本的git命令在命令行进行操作,或者使用直接使用github desktop 这款软件在图形化界面操作。因为要把自己的BLOG托管在github上,所以要懂一点这方面的操作。

不过由于是在国外,访问速度蛋疼啊,不介意的可以用这个,介意的就用国内的吧。

2021-09-20 另外如果你买的是阿里云的域名(其他家的域名我还没有尝试过,不过估计应该都支持),可以通过配置域名解析,把来自国内的请求默认转到国内的静态网站,来自境外的请求默认转到github上,目前我是这么做的。唯一麻烦的地方就是你要维护两套,不过基于git的话也费不了多少事。

Coding

早前感觉访问github速度变慢了,不知道是因为网络原因还是为啥。所以后面看了国内的两个自建博客的代码托管服务,码云码市,发现也支持jekyll静态页面,既然可以白嫖,何乐而不为呢。目前我使用coding的pages了,coding自带的pages不错,而且目前(2020-10-17)又有了新版的静态页面,不过我还是在用旧版的,体验和github差不多,挺方便的,支持自定义域名、自动部署等。

2021-01-10 感觉coding在力推新版本的静态页面,而新版本的静态界面是基于腾讯云服务器的,是收费滴,有种隐隐的、不好的感觉。

2021-09-20 开始收费后,已经放弃coding了。目前国内在自己的云服务器上部署了。我也在思考另一个问题,有自己的服务器为啥要部署静态页面,直接建站不香吗?对我来说,麻烦,我写博客就是简简单单的记录,不是为了管理评论、备份数据库等等,就是简简单单写完markdown,jekyll生成一下静态网站,发布到服务器上,that’s all。

Gitee

gitee对自建站感觉不太友好,搭完之后莫名其妙有时候访问某个页面404,有时候又可以,体验那是相当差。

另外目前(2020-10-17)gitee不支持自动部署,也就是说,你每次写完博客兴高采烈的提交到gitee之后,还要打开登录gitee,手动点击一下重新部署,我是无论如何也想不出,设计者为何如此狗血。而且,它还不支持自定义域名。硬伤啊,直接选择放弃治疗,都不带挣扎的。

gitee好的一点是,它可以如github一样给你带一个你自己名字的静态页面域名,而coding就有点迷了。

linxingyang.github.io 	// github
linxingyang.gitee.io 	// gitee
30zhfq.coding-pages.com // coding WTF?

关于自定义域名

在github上先创建github pages,比如我创建出来的 linxingyang.github.io,然后我们在cmd命令行ping一下这个域名获得ip地址,如下获得185.199.108.153

图

然后在你的域名控制台配置你的域名,我的是阿里注册的域名。如下配置一条记录,主机记录是blog(因为我想用blog这个二级域名),记录值就是上面ping出来的地址。

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/06.png

然后在如下页面中

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/03.png

创建一个CNAME

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/04.png

并在其中加入你的域名,如下我的域blog.linxingyang.net

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/05.png

现在访问即可(有时候不会即时生效,域名解析配置需要一定时间生效。)

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/07.png

添加插件-强迫症患者?

TOC目录

TOC是我比较在意的功能,我希望TOC能够在右侧固定着。所以挑选模板的时候基本上没有TOC的就不详细看了。当然如果你找到一款很喜欢的模板,但是它没有TOC,你可以用上面说的流语法自己搞一个TOC出来,这种直接参考别人的做法就可以了。

PC端:TOC展开

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/08.png

PC端:TOC收起

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/09.png

移动端 展开

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/11.png

移动端收起

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/13.png

访问量统计

不蒜子:用于统计网站访问量

使用不蒜子比较简单粗暴,主要用于在页面中展示每个页面的访问量等信息。这里要感谢一下不蒜子,哈哈,对程序员的承诺。

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/19.png

页面中使用如下:单个页面的访问量

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/14.png

整个网站的访问情况。总访问量和总访客数

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/15.png

PS:因为不蒜子是根据url来统计访问量的,如果你的域名变化了(从linxingyang.net变成blog.linxingyang.net),那么新域名的访问量会重新开始计算的。所以对访问量比较在乎的程序员们,要考虑好固定一个域名。(我就换了三次,访客数都没了 > _ <)。

百度统计

尝试过百度统计,没找到在页面显示访问量的代码块。而且百度统计擅长是电商类网站比较需要统计,类似于facebook的像素代码。

facebook像素代码

要啥自行车。

评论系统

gitalk

gitalk原理和gitment一样,也是依赖于GitHub Issues,只要有github账号即可评论。可以尝试一下这个,就长这样子。

图

gitment

国外的disguse已经不能用了,国内多说也关了,友言也不能用了。

github上还有一款gitment 评论插件,基于GitHub Issues,只要有github账号即可评论。如下图:

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/01.png

我也不知道因为啥就又放弃了,好像插件使用库所在的服务器到期了?

畅言

最后选择了畅言,但使用畅言网站域名必须要进行IPC备案(我在阿里申请的域名,阿里提供了备案接口,备案挺方便的)。使用畅言评论必须要有如下账号。

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/16.png

测试评论

https://gitee.com/linxingyang/at-2020-10-02-image/raw/master/image/M-me/博客/image/2018-06-27/18.png

本来从畅言和gitment中,选择了畅言,但是畅言的广告让人恶心,后来又找了gitalk作为评论系统。

感想-牢骚更贴切

像有些人说的,玩过一遍这些,最后还是会回归CSDN这些网站来写博客,因为这样更简单。

自己建站,要调样式,找插件,可能还要申请域名等等都是相对比较繁琐的。但相对于CSDN这些,页面比较干净,没有广告 ,比较自由,没有审核机制。

就当五五开,各有优点,不过这样玩一遍过来,也学会了不少东西。生活在于折腾啊,不归最终还是要回归主线,这些副本当个兴趣玩玩就好。

2020-10-17 如果CSDN能够提供类似git这种功能就好咯,可以通过类似提交的仓库方式把本地写好的文章进行上传,现在每次去编辑,好难啊。目前还是打算延续coding + CSDN的方式,因为coding这边挂着自定义域名呢,怕哪天自己扑街了,没人续个费,就直接访问不了了,放在CSDN,应该能万岁万岁万万岁吧。

2021-09-20 目前已经放弃CSDN和coding了,如前所说,简简单单markdown,提交git,jekyll生成静态页面。把写博客当成一个兴趣爱好,现在还有更重要更值得自己去做的事情,博客就偶尔把玩一下吧。

一杯敬自由,一杯敬生活。