第一节:写在前面

这篇博文是我搭建个人博客系列的第一篇,本文没有记录任何搭建博客的实际操作,旨在分析当下几种流行的博客平台和博客框架,包括第三方博客平台以及各种博客框架的优势和缺点,如果你还没有拥有自己的博客网站,并且从现在开始想做一个属于自己的博客网站的话,那么这篇博文应该会对你有所帮助。

特别提示:本文提及的博客框架很多,其中有一些我自己也没有用过,对于我没使用过的这些框架,主要是参考了大神我不是咕咕鸽的这篇文章

第二节:博客是什么

博客正式名称为网络日记,又音译为部落格或部落阁等。博客(英语:Blog)是一种在线日记形式的个人网站,借由张贴文章、图片或视频来记录生活、抒发情感或分享信息。

到现在为止,博客的形式更加具体化,博客网站的内容会大部分偏向于某个方面,比如程序员分享技术、数码博主分享数码产品体验和测评、个人或平台分享美食和美妆等等。在博客平台上,博主不仅可以分享自己,还可以跟志同道合的人互动交友、交流交换信息。尤其像我这种程序员,个人博客就显得尤为重要了。首先我可以将博客作为自己的个人笔记来使用,程序员每天都要学习新的东西,并且学习的知识点多而且杂,经常为了完成某个需求而在网络上苦苦需求大半天,而找到的结果可能用一次就不会再用了,这种情况下我就需要一个类似“个人笔记”的东西来记录,个人博客就是一个很优秀的个人笔记!其次,由于博客是在线的,只要有网络的地方就可以访问,这相比于实体的存储设备具备更大的灵活性;而且,博客是分享自己是最直接的方式,学习是没有止境的,但是学习的最终形态就是输出!此外,博客平台一般具备评论系统,我们可以借助评论系统来进行沟通交流,也促进了自己个人的进步;最后,假如哪天你想要换一份工作,一个优秀的个人网站也会给你的面试添彩不少!

总而言之,在当下信息爆棚的时代,拥有一个个人博客,是一件很有必要也很有意义的事情!

第三节:第三方平台

即使你从来没有写过博客,你肯定也接触过别人写的博客!当你用浏览器搜索时,经常会在搜索结果中看到一些博客的链接,比如简书、博客园、CSDN、知乎等等。这些都是第三方平台,它们的用户在这些平台上发布自己的博文。使用这些第三方平台来写博客是很简单的,你只需要在这些平台上注册一个账号,然后就可以直接使用它们提供了服务了,发布文章、评论文章以及回复评论等,全部在平台上来实现,甚至不用花一分钱!

曾经我也是使用第三方平台来写自己的技术博客的,知乎、CSDN、博客园等我都用过,但是在我身上发生过好几次这样的事情,就是我经常会发现我之前写的博文莫名其妙被删除了,给我的理由是包含违规内容之类的,实际上存不存在违规内容不知道,反正我辛辛苦苦写的博文就这么莫名其妙地没了!

第四节:自建的博客

对于喜欢折腾的人来说,自己搭建一个博客网站会是更好的选择,不仅可以避免第三方博客平台存在的问题,还可以定制化自己的网站,更好的展示自己!由于很多编程技术和博客框架技术的进步,现在搭建自己的个人博客已经没有那么高的要求了,对于没有编程经验的人来说,甚至半个小时就能搭建出一个属于自己的网站。

从大的方面来讲,现在主流的博客框架分为两种:

  • 静态博客框架:静态博客网站就是由一些 HTML、CSS、JS 等前端资源组成的,这些静态资源部署在代码托管平台或者服务器上,当访客访问博客网站时,浏览器从服务器直接获取这些静态资源,然后展示给访客。
  • 动态博客框架:动态博客才是实质意义上的网站,不仅有前端资源,还有后台数据库等资源,当用户访问时,获取的数据来自数据库,而浏览器则负责前端页面的渲染;

当下最流行的博客网站有下面五种,现在我们来简单说一下这五种博客框架的优缺点。

4.1:Hexo

  • 优点

    静态博客网站。它是基于 Nodejs 的,使用特定的主题将 Markdown 文件渲染成静态的博客网站文件,然后通过命令将静态博客文件上传到服务器,以此来完成博客网站的部署,快速且优雅;

    建站成本很低。Hexo 是静态博客网站,其原理就是把生成的静态博客文件上传到服务器,所以可以将博客部署到 Github 或 Gitee 上,不用另外花钱购买服务器,当然你也可以自己购买服务器来部署;

    使用的人很多。假如你遇到了问题去网上搜解决方案的话,也是比较容易的。而且 Hexo 是台湾人开发的,中文文档非常友好;

  • 缺点

    没有后端!因为没有后端,所以静态博客存在很多天生的弊端。第一,博客部署完成以后,一旦换了一台电脑,就不得不重新部署环境,而且你需要拷贝你的博客在云端,否则你配置好新的电脑并推送过去的话,你之前写的博客就都没了;第二,因为没有后端,所以基本上你只能在本地写文章,假如你的电脑不再身边,就没办法写文章并发布了(不过现在可以将 Hexo 程序部署到服务器 Docker 上,可以在线写文章);第三,没有后端就意味着没有数据库,那么博客的评论系统必须外接其他平台,你需要从它们当中选一个来配置。我总担心评论数据会丢失,之前还暴出大家用的很多的 Valine 存在安全问题,总之评论系统的配置还是比较繁琐的!第四,Hexo 博客依赖于 theme 和 plug,如果想做出满意的博客网站,肯定需要很大的折腾,而且如果你想做出满意的效果,就要具备一些前端的编程技术,越想搞好难度就越高;

  • 总结

    如果你愿意折腾的话,Hexo 是我最推荐的,如果你有时间折腾,一定要玩一玩 Hexo,还能学到很多知识!

4.2:Hugo

  • 优点

    跟 Hexo 一样,Hugo 也是静态博客网站,也具备静态博客天生的缺点,但是它比 Hexo 更简单一些!而且它是用 Go 语言写的,如果你有几百篇 Markdown 的文章要渲染,它可以在几秒钟的时间就完成渲染,而 Hexo 则可能需要更长的时间;

  • 缺点

    使用 Hugo 的人比 Hexo 的人少很多,相对可用的主题也比较少,如果你遇到问题去网上查找解决方案的话,可能有找不到解决方案的风险,或者需要很长的时间!

  • 总结

    同 Hexo,如果你爱折腾,而且你的文章有很多(几百篇的样子),那么我还是比较推荐你使用 Hugo 的。虽然可用的主题比较少,但是依然有一些简约美观的主题可以选择。

4.3:Typecho

  • 优点

    非常轻量,整个文件才385KB,而且到我写博文的时间,还在一致不断地更新优化;

    带有后端,因为带有后端,所以假如你换了一台电脑,就不需要重新部署,可以直接登录后端来写博客;

  • 缺点

    需要购买服务器

    可扩展性也有限。对于单纯的博客来说,这个问题其实不是问题,说它扩展性有限是因为跟 Wordpress 相比。

  • 总结

    对于只是想写博客,不想搞花里胡哨的人,而且服务器配置有限的话,那我推荐使用 Typecho!

4.4:Halo

  • 优点

    部署和维护方便,因为可以使用 Docker 来部署和维护;

    日渐丰富的主题

    活跃的社区,开发者非常友好,基本上你碰到任何问题,都能在社区中找到答案;

  • 缺点

    Halo 是使用 Java 编写的,所以比较迟服务器的配置;

  • 总结

    如果你有一台配置不错的服务器,那么你真的要试一下 Halo!你会发现它真的是太省心了,与 Hexo 和 Hugo 相比,它自带了后端,你随时随地都可以发布文章(只要有网络和浏览器);与 Typecho 相比,你不需要去下载邮件插件等一系列插件,Halo 都贴心地给你集成好了,你只需要简单的几个设置就可以使用;如果你想换主题,也可以轻松地利用远程下载,一键换成新主题,非常方便;你还可以随时利用博客自带的备份功能来备份你博客的所有数据,并把他们下载到你的本地;当 Halo 更新了,你也可以利用 docker 在 10s 钟内就完成博客的升级……

    总之,假如你有一台配置不错的服务器,那就选 Halo 吧!

4.5:WordPress

  • 优点

    用的人极多。截至 2019 年 10 月的统计,全球所有网站中,有超过 34.7% 的网站采用 WordPress 方式搭建,也就是说每 3 个就有 1 个是用 WordPress 搭建的,小到一个个人博客,大到美国白宫官方网站。你遇到的 99.9% 的问题,世界上其他人肯定都遇到过,所以你可以比较容易在网上找到解决方案。Wordpress 不仅仅可以搭博客,它还可以搭一个论坛,它甚至还可以搭一个商城。

    生态丰富。适配的插件非常多,你能想到的功能,99.9% Wordpress 都有,利用庞大的插件库,你可以完成你对网站的一切幻想。

  • 缺点

    需要服务器

    臃肿。由于功能过于强大,Wordpress 与上面几个博客框架相比,显得非常臃肿,尤其是当你的博客内容多了之后,需要你有一定的网站优化能力(当然这个可以慢慢学,也有很多插件可以帮上忙)

  • 总结

    如果你有一台配置不错的服务器,实际上我也不建议使用 Wordpress,因为它太臃肿了,我觉得是没必要!

第五节:我的选择

由于我个人财力有限,现在个人服务器的价格也不便宜,即使你因为新用户特权,可以在一些平台上享受优惠,但是到期后再续费的话,费用也很高!所以我只能从 Hexo 和 Hugo 里面选择,由于我个人又比较爱折腾(主要是因为我本人得了强迫症晚期,哈哈哈),对 Nodejs 和前端又有所了解,所以我就选择了 Hexo!

我的这个博文系列,从搭建部署到基本设置,再从外观美化到性能优化,全程都是针对 Hexo 博客的!

~~

~~

~~