Hello Halo

老蔡 2 阅读 技术分享

Hello Halo

各位好,我是老蔡。今天这篇文章,既是一篇技术分享,也是一封"情书"——写给Halo这个开源博客系统的情书。作为一个在互联网行业混了快二十年的老兵,我用过无数种建站工具,但Halo是我用过的最舒服的一个。

技术博客

为什么选择Halo

在决定搭建凹凸圈工作室的博客时,我对比了十几个建站工具。WordPress、Hexo、Hugo、Jekyll……每一个都有自己的优缺点。但最终,我选择了Halo。原因很简单:它既简单又强大。

简单在哪里?安装简单。Halo支持Docker一键部署,5分钟就能跑起来。不需要配置复杂的环境,不需要懂服务器运维。对于我这种"只想写文章,不想折腾服务器"的人来说,这太重要了。

强大在哪里?功能强大。Halo支持Markdown编辑、标签分类、评论系统、SEO优化……基本上一个博客需要的功能,它都有。而且它还是开源的,你可以根据自己的需求进行定制。

更重要的是,Halo的社区很活跃。遇到问题,去社区问一下,很快就能得到解答。这种开源社区的氛围,让我想起了早年的BBS时代——纯粹、互助、有温度。

Halo的技术架构

作为一个技术人,我当然要聊聊Halo的技术架构。Halo是基于Spring WebFlux构建的,采用了响应式编程模型。这意味着它在处理高并发请求时,性能表现更好。

Halo的数据库支持PostgreSQL、MySQL和H2。对于个人博客,H2就够了;对于企业级应用,推荐PostgreSQL。我自己的博客用的是PostgreSQL,跑得很稳定。

Halo的插件系统也很强大。你可以通过安装插件来扩展功能,比如SEO优化、评论系统、联系表单等。而且Halo的插件开发门槛不高,如果你懂Java,完全可以自己写插件。

技术架构

我的Halo使用体验

我用Halo搭建凹凸圈工作室的博客,已经有一段时间了。整体体验非常好,但也有一些小坑,在这里分享给大家。

第一个坑:编辑器插件。Halo默认的编辑器是BlockNote,功能很强大。但如果你不小心安装了其他编辑器插件(比如StackEdit),可能会导致默认编辑器失效。我的建议是:不要乱装插件,用默认的就够了。

第二个坑:Session过期很快。Halo的Session大概3-5分钟就会过期,这在做批量操作时很麻烦。我的建议是:用浏览器的fetch API来操作,它会自动处理Session刷新。

第三个坑:PAT令牌返回403。我创建了PAT令牌,但用它调用API时总是返回403。这可能是RBAC配置的问题。我的建议是:用浏览器Session代替PAT令牌,更可靠。

Halo的SEO表现

作为一个内容创作者,SEO是很重要的。Halo在这方面做得不错——它支持自定义URL、Meta标签、Sitemap等。我的博客上线后,很快就被百度和Google收录了。

当然,SEO不仅仅是技术问题,更重要的是内容质量。Halo帮你解决了技术问题,但内容还是要靠自己。我的建议是:写好文章,做好标签分类,保持更新频率。这三点做好了,SEO自然不会差。

写在最后

Hello Halo,Hello新世界。感谢Halo这个开源项目,让我能专注于内容创作,而不是折腾服务器。

如果你也想搭建一个博客,我强烈推荐Halo。它简单、强大、社区活跃,基本上一个博客需要的功能,它都有。

凹凸圈工作室的博客,就是用Halo搭建的。如果你觉得我们的内容还不错,欢迎关注。如果你对Halo感兴趣,也欢迎交流。

技术改变世界,内容连接人心。这是我对互联网的理解,也是凹凸圈工作室的使命。

关注"凹凸圈工作室",获取更多技术分享和互联网观察。