手写一个Hexo评论系统(一)

我的个人博客时使用Hexo构建的,个人觉得使用Hexo非常方便,而且主题也很好看。因为我的Hexo仓库推送地址同时配置了Github和Gitee,所以一个hexo d命令便可以通知部署到 zouchanglin.cnzouchanglin.gitee.io 两个站点。唯一美中不足的就是Hexo缺少一款我比较满意的评论系统,所以决定自己手撸一个Hexo博客的评论系统,现在已经部署好了,去我的博客站点是可以看到效果的。

我的博客经历了什么

我个人比较喜欢用博客来记录很多东西,比如学习笔记、实验报告、心得体会啥的,能写在博客上面的基本上都写在博客上了。所以我的博客一直保持着更新,不断追求完善,直到如今博客才算是比较完美,而且也算是很稳定了,即使是换电脑了,还可以保证迁移成本非常小。

GithubPages时代

先说说这个博客配置的历程吧,最开始就是单纯的在Github上新建一个GithubPages,个人地址就是username.github.io这种形式的,后来发现其实这种做法问题有很多:

1、访问速度慢,毕竟那个时候Github速度实在是太慢了,Push代码有时候都成问题,更别说加载个人主页了。大部分情况下不等待个十来秒是无法全部加载的,不过自从微软收购了Github后情况貌似有所好转。

2、图片的问题的,由于我是直接把图片给放在同级文件夹底下的,所以hexo d的时候也必然要把图片给push到Github的仓库,本来推送就很慢了,再来个推送图片结果就更慢了。访问图片也是慢到极点,所以有时间博客里的图片基本上无法加载,这简直是无法忍受的,因为我写博客的原则就是尽量用比较少的语言,尽量用图片来说明。

云服务器部署时代

基于GithubPages的种种问题,我打算自己开发一款博客系统,也就是在仓库吃灰的https://gitee.com/zouchanglin/journey,这款博客系统是基于SpringBoot + Thymelafe模板引擎开发的,那个时候技术不成熟,其实还是挺好看的,但是由于需要云服务器部署,而且有一些细节问题没有处理,比如区分代码高亮,粘贴插图等,其实虽然能用,但是毕竟数据持久化在云服务器的MySQL中,感觉不是很稳定,还包括WordPress这种直接部署在PHP环境中的带后端的系统, 最终还是选择GithubPages,毕竟Hexo主题还是挺多的,我很喜欢Hexo的主题, Jekyll也不错,但是主题没有Hexo的多。

个人域名时代

准备在云服务器上部署我的个人博客系统的时候我还顺便买了10年的域名,并且做了备案,而且发放了免费的HTTPS证书,有效期时一年,证书过期了可以重新免费申请。反正域名都买了,而且暂时也不用所以就直接把GithubPages的主域名改成了我自己的域名。所以我的博客地址就成了https://zouchanglin.cn。但是依旧是避免不了的问题,那就是慢,而且慢的主要原因还是图片加载占用了比较大的带宽。所以图片真是不能往Github上面放呀!

图床才是正解

因为图片加载比较慢的问题,所以我又找了一个比较好的方案,那就是图床。最开始使用的微博图床,但是总感觉这个东西不是很靠谱,过了大概两周时间果然出现了图片被删除的情况,所以还好我有备份,打算另辟蹊径,最后又陆续尝试了路过图床、又拍云发现都是各有利弊。后来某天邮箱收到了七牛云给发的推广邮件,免费10GB对象存储空间。有个人备案域名的我简直是对七牛云爱了,我解析了一个子域名叫img.zouchanglin.cn,解析到七牛云的存储空间中,因为如果没有个人域名的话七牛云只会提供一个月时长的随机域名,过了一个月随机域名就会失效,意味着图片链接也无法使用了,下面是我的图片仓库:

image

此时需要一个图片上传工具,毕竟不能每次都要依靠手动上传吧!所以给大家安利一个好工具: PicGo: 一个用于快速上传图片并获取图片 URL 链接的工具 ,支持七牛云、腾讯云、又拍云、Github等图床。而且可以直接剪切板上传,由于是Electron-vue开发的,所以Windows、Mac、Linux平台都支持。

七牛云的仓库不仅可以存储图片文件(png、jpg、gif....),而且还可以存储其他任意类型的文件,有时需要在博客里放一些压缩包的下载链接,用七牛云真的再合适不过了。而且以后就算七牛云没了,还可以把图片迁移到自己的服务器上,反正只要二级域名重新解析一下就OK了。

全站CDN加速

由于有时候对博客的加载速度还不是很满意,所以用了阿里的全站CDN加速,是免费的,但是如果是HTTPS的话还是需要收费的,但是很便宜按照流量算一个月一块多钱,所以相当于是免费了。

image

自从开启了全站CDN加速,全国访问都是很低的延迟:

image

双仓库部署

我的Hexo仓库推送地址同时配置了Github和Gitee,所以一个hexo d命令便可以通知部署到 zouchanglin.cnzouchanglin.gitee.io 两个站点,但是由于Gitee关闭了GiteePages的高级功能,也就是Pro版本,不支持关联到自定义域名,而且GiteePages需要手动部署更新内容,所以就有了zouchanglin.cnzouchanglin.gitee.io 两个站点。目前两个站点都是可以低延迟正常访问的。

就缺一个评论系统

那么多问题都解决了,现在最主要的问题就是缺少一个方便的评论系统,网上虽然有很多集成评论系统的教程,但是大多都是Hexo集成 Gitment、 Gitalk、来必力、畅言、Leancloud的Valine、Disqus...虽然其中不乏优秀的评论系统,但是都不是我想要的效果,我理想的评论系统应该是哪种呢?。

1、无需登录和验证码,直接评论即可

2、支持回复评论,且可无限递归回复

3、支持评论点赞,按照点赞排序,相同则按照时间排序

3、支持文章评分,显示评分人数和评分的平均分数

4、支持自己的评论被别人回复后可以邮件通知

5、支持评论后台管理系统,可以设置对应属性

6、支持评论导出,且高度100%可恢复数据

评论系统的功能就是这些了,接下来要干的事情就是逐步实现这些功能,不断优化达到一个比较棒的效果!开始构思,请见《手写一个Hexo评论系统(二)》。
原文地址:《手写一个Hexo评论系统(一)》

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,406评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,732评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,711评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,380评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,432评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,301评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,145评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,008评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,443评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,649评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,795评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,501评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,119评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,731评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,865评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,899评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,724评论 2 354

推荐阅读更多精彩内容