Skip to content

hexo到Typecho的迁移日志

📘迁移日志🚩

2018年hexo博客是当红炸子鸡,第一次接触博客的我搭建了第一个个人博客。搭建好的一个月内,给博客做了大量的折腾工作。包括:各种插件、自定义样式、自定义页面、SEO优化、缓存加速、百度统计等。光样式表就写了700+行,可以说是基本更换了NexT主题的原始样式。之后也没有更新很多文章,进入了半弃坑状态,2020年疫情在家开始重拾博客更新,期间给博客水了N篇LeetCode题

🔎为什么迁移?

2021年,距离上次折腾博客已经过去了三年,在长时间更新博客时,hexo总有让我不太满意的地方。

  1. 比如local search在本地文章多的时候,生成search.xml的速度太慢,导致同学经常吐槽博客"搜个东西转圈那么久",由于hexo本身是纯静态博客,由nodejs支撑其主要功能,所以快速的搜索只能依赖于本地索引或者第三方api。
  2. 插件和定制化过多,拖慢了网站访问速度,后期加上了CDN才勉强压缩到2s左右。
  3. NexT的简约扁平化风格看腻了,几年过去了,hexo已经衍生了更多优秀的主题,升级主题带来的成本比较大(由于个人定制内容过多)。
  4. 因为部署在服务器,hexo三连部署太慢,每次都要生成全部文章等在电脑前部署
  5. 评论区、邮件发送功能、数值统计功能均依赖于第三方api

🍡为了更好的博客体验,我决定重新搭建个人博客,选用Typecho作为博客的引擎。

Typecho博客由PHP驱动,以前总会觉得Typecho需要数据库支撑会带来许多运维困难,但如今随着宝塔面板在云服务器的充分使用,运维问题已经非常简化了。相对于hexo,Typecho带来了如下优点:

  1. 更加快速、简洁的网站体验,网站访问速度基本在1-2s内。
  2. 得益于数据库驱动,文章搜索不再需要前端在用户访问时生成动态索引,避免了搜索东西转圈的问题。
  3. 更好更现代的运维方式,文章发布不再需要三连部署,后台点击发布即可实时看到发布的新文章,组件通过宝塔面板能够更好的维护,支持定时任务备份数据。
  4. 不再需要第三方api接入,评论系统从hexo的valine+leancloud的组合改为存储在数据库中,数值统计不再依赖于busuanzi
  5. 更好的视觉效果~

🚠关于分站

以前的站点是服务器+github+coding的三线部署,为了更好的保留以前的分站效果,旧站的hexo博客托管到了github,如今的github也是全面拥抱了DevOps,hexo用户不再需要通过烦琐的三连命令部署了,直接推送分支代码到仓库,github便会快速的CI/CD,变得更加易用了!同时,主站和分站也开启了相互链接,欢迎从顶部导航栏进入曾经的分站~

🚴Typecho环境

数据库:Mysql: 8.x+ 后端语言:PHP: 7.x+ Web服务器: Nginx: 1.20+ 缓存:CDN、Service Work、Redis

2022年4月,基于VuePress,voding主题搭建的个人知识库上线~用于以更适合阅读的方式总结知识

博客主站:here

hexo旧站:here

Vuepress版知识库:here

🥗愿景

希望在今后的日子里,分享更多更高质量的文章~😋