我的个人博客是用Hexo搭建的。个人觉得Hexo用起来很方便,主题也很漂亮。因为我的Hexo仓库推送地址同时配置了Github和Gitee,所以一个hexod命令可以通知部署到两个站点,zouchanglin.cn和zouchanglin.gitee.io。唯一美中不足的是Hexo缺少我比较满意的评论系统,所以决定自己搭建一个Hexo博客的评论系统。现在已经部署好了,大家可以去我的博客看看效果。我的博客经历了什么?我个人喜欢用博客记录很多东西,比如学习笔记、实验报告、心得等等。基本上能写到博客上的都写到博客上去了。因此,我的博客一直保持更新,不断追求完美。到现在为止,博客还是比较完善的,也算很稳定了。即使换了电脑,迁移成本也能保证很小。GithubPages时代,先说说这篇博客的配置过程。一开始只是简单的在Github上新建了一个GithubPages,个人地址是username.github.io的形式。后来发现这种做法其实有很多问题:1.访问速度慢。毕竟那时候Github的速度太慢了,Push代码有时候都出问题,更别提加载个人主页了。在大多数情况下,不等待十秒是不可能全部加载完的,但自从微软收购了Github之后,情况似乎有所好转。2.图片的问题,因为我直接把图片放在了同级文件夹下,所以在hexod的时候必须把图片推到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,解析到七牛云的存储空间,因为如果没有个人域名,七牛云只会提供一个随机域名,有效期为一个月,一个月后失效,这意味着无法使用图像链接。下面是我的图片仓库:这个时候需要一个图片上传工具。毕竟不能每次都靠手动上传。酒吧!所以这里给大家推荐一款好工具:PicGo:快速上传图片和获取图片URL链接的工具,支持七牛云、腾讯云、优拍云、Github等图床。并且可以直接上传到剪贴板。由于是Electron-vue开发的,所以支持Windows、Mac、Linux平台。七牛云的仓库不仅可以存储图片文件(png、jpg、gif...),还可以存储任何其他类型的文件。有时需要在博客中放一些压缩包的下载链接。再合适不过了。而且就算以后七牛云没有了,你还是可以把图片迁移到自己的服务器上。反正只要重新解析二级域名就OK了。全站CDN加速有时候对博客的加载速度不是很满意,所以用的是阿里的全站CDN加速,是免费的,但是如果是HTTPS的话还是要收费的,不过很便宜.按照流量来算,一个月一个很多钱,所以相当于免费。由于开启了全站CDN加速,全国访问延迟非常低:双仓库部署我的Hexo仓库推送地址同时配置了Github和Gitee,所以一个hexod命令可以通知部署到zouchanglin.cn和zouchanglin.gitee.io两个站点,但是由于Gitee关闭了GiteePages的高级功能,即Pro版,不支持链接自定义域名,GiteePages需要手动部署更新的内容,所以有zouchanglin.cn和zouchanglin.gitee.io两个站点。目前两个站点都可以正常访问,延迟很低。由于没有评论系统,所以解决了很多问题。现在的主要问题是缺乏方便的评论系统。虽然网上集成评论系统的教程很多,但大多是Hexo集成的Gitment、Gitalk、来比利、ChangWords、Leancloud的Valine、Disqus……虽然其中也有很多优秀的评论系统,但没有一个是最优秀的我要的效果我理想的评论系统应该是怎样的?.1.无需登录验证码,直接评论即可2.支持评论回复,可无限递归回复3.支持评论点赞,按点赞排序,相同按时间排序平均分评分4.支持你的评论被别人回复后邮件通知5.支持评论后台管理系统,可以设置相应的属性6.支持评论导出,数据100%高可恢复评论系统的功能有这些,接下来要做的就是逐步实现这些功能,不断优化,达到更好的效果!要开始,请参阅《手写一个Hexo评论系统(二)》。原文地址:《手写一个Hexo评论系统(一)》
