技术选型
在做博客之前先了解了一下国内已有的线上博客平台,因为其在SEO和曝光(自带流量,不用手动SEO)方面有一定的先天优势:
- CSDN:老牌国内社区,主要问题是内容质量低,充斥着广告和复制粘贴翻译的低创,公开拿开源资料来收费,
还把导入MD的功能砍了(根据官方的说法是保留了MD导入的)
- 知乎:问答社区,编写体验尚可,之前在上面写过几篇NLP的文章,内容质量有点参差不齐,编写体验不错,支持MD导入
- 掘金/思否:查资料的时候经常看别人的文章,感觉这两家的内容质量还不错,观看体验尚可,但没在上面写过
- 博客园:默认样式很丑,需要(个人直觉)在线配置有点麻烦,但自由度高,有SEO优化,部署相对方便(特别是对国内这种需要公安备案的环境)
新浪:已经死啦
上述平台中知乎、掘金、思否我会尝试同步更新,博客园随缘更新。
目前国外我了解的开放博客解决方案(或者说本地博客部署框架)有:
- WordPress:老牌博客框架,提供自己的在线平台;功能大而全,开发语言为PHP,个人不太熟悉,但实际写作过程中几乎不用接触代码
- Hexo:Node.JS框架,自定义程度高,整体较为轻量,适合前端开发者
- Notion:基于数据库的知识管理平台,支持页面公开发布,个人一直在用,最近也支持了Wiki模式,但鉴于无本地和URL为uuid等特性,这里没有把他当作博客的第一选择,而仅仅是用作个人知识管理,后续考虑编写hexo插件和调用Notion API打通hexo+Notion的工作流
Hugo:未作了解
最终,主要是因为个人对整个Hexo生态比较熟悉,选择了Hexo平台(并不是说其他平台不好)
对个人而言,Hexo有以下优点:
- 架构简单,整个CLI都是基于Node的,对JS开发者友好
- 使用JSON数据库存储元数据,方便扩展(缺点是体量大了可能会有性能缺陷,后续要考虑长期维护的话是一个问题)
- 插件较多,自定义性方便(后面会给到我的插件方案)
- 部署方便,可以直接使用Git进行CI/CD自动化部署(如Github Action)
- 主流平台(这里我使用腾讯云)都支持直接通过serverless部署hexo(不知道什么是serverless的可以参考我的这篇博客)