介绍

探索 Halo:开源、可定制的网站构建新时代

在数字化时代,网站已成为个人和企业展示自己的关键途径。然而,传统网站构建方式已无法满足不断变化的需求。在这背景下,Halo 应运而生。它不仅是一款开源的内容管理系统,更是一个具有创新可定制性的工具,助您打造个性化、引人入胜的网站。

Halo 的特性包括但不限于以下内容:

可插拔架构:

Halo 采用了可插拔架构,使得功能模块之间的耦合度降低,用户可以根据需要灵活地安装、卸载插件,轻松定制自己的网站功能。同时,插件开发接口保证了系统的高扩展性和可维护性。

丰富的主题模板机制:

Halo 提供了丰富多样的主题模板,用户可以根据自己的品味和需求选择合适的主题,实现网站外观的个性化定制。用户可以动态切换主题模板,并实时编辑和预览效果,满足不同用户的多样化需求。

强大的编辑器功能:

Halo 的富文本编辑器功能丰富,包括添加标题、段落、引用、列表、代码块等功能,同时支持拖拽和粘贴图片上传、插入视频等操作,让用户的文章创作更加便捷和生动。

运行时安装和卸载插件:

Halo 支持在运行时安装和卸载插件,用户可以随时根据自己的需求扩展系统功能,不需要重新启动系统,即可实现新功能的添加或删除。

多语言支持:

Halo 提供了多语言支持功能,用户可以根据需要将网站内容翻译成不同的语言,满足全球用户的使用需求。

易于部署:

推荐使用 Docker 的方式部署 Halo,简化了部署过程,同时避免了各种环境依赖的问题,统一管理在工作目录中的应用数据也能方便地进行备份和迁移。

插件机制:

Halo 的插件机制灵活,用户可以根据自己的需求自由扩展系统功能,保持系统的简洁轻量。

模板机制:

Halo 支持自定义配置、主题预览、多语言等功能,用户可以根据自己的需求进行自定义配置,为网站带来更加个性化的外观和交互体验。

附件管理:

Halo 支持多种存储策略,并支持通过插件扩展外部存储位置,用户可以更加灵活地上传、查看和管理附件。

搜索引擎:

Halo 内置全文搜索引擎,支持关键字搜索文章和页面内容,同时也支持通过插件扩展外部搜索引擎,让用户按需选择、自由扩展。

在线体验

环境地址:https://demo.halo.run

后台地址:https://demo.halo.run/console

用户名:demo

密码:P@ssw0rd123..

部署

halo 提供了非常多的部署方式,可以以一下方式进行部署

Docker Compose

Docker

1Panel

Helm

Podman

JAR

这里之介绍两种方式进行部署

如需其他的请去往官方文档里进行安装

官方安装文档:安装指南 | Halo 文档

1Panel

官方安装文档:使用 1Panel 部署 | Halo 文档

打开 1Panel 面板

Screenshot 2024-04-09 153624-jlpj.webp

然后点左边应用商店

Screenshot 2024-04-09 153633.webp

安装 OpenResty

Screenshot 2024-04-09 153656.webp

安装 MySQL

这里如果你要在外部进行访问 MySQL,必须把端口外部访问打开,不然外部无法访问

Screenshot 2024-04-09 153738.webp

安装 Halo

这里必须把端口外部访问打开,不然无法访问

外部地址填写成您域名的地址,或者 0.0.0.0/127.0.0.1/localhost

注意!外部地址一点要带 http(S) 不然会报错具体情况看这里:[FEATURE] 建议优化 Halo 外部访问地址填写校验 · Issue #4091 · 1Panel-dev/1Panel

目前开发者只把反向代理的那里添加上了 http(s) 的选项

Screenshot 2024-04-09 153803.webp

配置完即可点击安装

安装完成以后输入自己的 IP 地址加上刚刚设置的端口号

当然也可以在 1Panel 里面进入

进入应用商店 点击已安装,然后点击服务端口即可跳转

Screenshot 2024-04-09 155034.webp

Docker

官方安装文档:使用 Docker 部署 | Halo 文档

这里拿宝塔面板进行演示

请确保已安装 Docker,这里不过多赘述

Docker 官方安装文档:Install Docker Engine | Docker Docs

警告

此文档仅提供使用默认 H2 数据库的 Docker 运行方式,主要用于体验和测试,在生产环境我们不推荐使用 H2 数据库,这可能因为操作不当导致数据文件损坏。如果因为某些原因(如内存不足以运行独立数据库)必须要使用,建议按时备份数据

如果需要使用其他数据库部署,推荐使用 Docker Compose 部署:使用 Docker Compose 部署

进入命令行以后输入

docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.14
  • -it:开启输入功能并连接伪终端

  • -d:后台运行容器

  • --name:为容器指定一个名称

  • -p:端口映射,格式为 主机(宿主)端口:容器端口 ,可在 application.yaml 配置。

  • -v:工作目录映射。形式为:-v 宿主机路径:/root/.halo2,后者不能修改。

文章有时性,Docker 安装方式请根据官方文档的来,但站长会注意更新的

出现一下内容代表安装完成

[root@chaoweilangmao ~]# docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.14
Unable to find image 'halohub/halo:2.14' locally
2.14: Pulling from halohub/halo
23828d760c7b: Pull complete
6765038b5c89: Pull complete
a85f6d56e149: Pull complete
e7d20d6a5105: Pull complete
05205722775a: Pull complete
1994784dacfc: Pull complete
484c62d59e91: Pull complete
4f4fb700ef54: Pull complete
d3162d684c25: Pull complete
7426ca080180: Pull complete
Digest: sha256:e8e1abb0cd62f86c8591e6e6284f2264356bd74ed5e62a7c90f7d49faefad6d6
Status: Downloaded newer image for halohub/halo:2.14
969085435f13774800bbabddc8950e6a092d22d392fa0ba872606a045d7a4fef
[root@chaoweilangmao ~]#

安装完成以后输入自己的 IP 地址加上刚刚设置的端口号

配置

基本配置

看到这里看来您已经成功安装了 Halo

在刚刚安装完成以后进入会有要求基本的配置

Screenshot 2024-04-09 155055.webp

这里按照您自己的需求进行填写

填完以后点击初始化

Screenshot 2024-04-09 155755.webp

之后会跳转到一个登录页面登录后台

Screenshot 2024-04-09 155805.webp

这里填写您刚刚的用户名和密码

初次登录会有一段时间初始化,根据配置决定快慢,请稍作等待自动跳转到后台

Screenshot 2024-04-09 155822.webp

到这里已经后台

其余更具自己的需求进行添加 / 配置插件以及主题

Screenshot 2024-04-09 155936.webp

默认的主题

Screenshot 2024-04-09 155951.webp

添加反向代理

详细教程请自行搜索

1Panel

在左边网站里

点击创建网站

选择已装应用

下面输入自己的域名

点击确认即可

宝塔

在左边网站里

点击创建网站

输入自己的域名以后点击确定

点击刚刚自己创建网站的设置

找到反向代理

点击添加反向代理

代理名称随便填

目标 URL 输入:127.0.0.1:[端口号]

输入完成点击确定即可

综上所述,Halo 是一款开源、可扩展、灵活的内容管理系统,其丰富的功能和灵活的定制性,能够满足各种用户的网站构建需求,助您打造个性化、引人入胜的网站。

如有错误和不足请联系站长邮箱:chaoweilangmao@qq.com

欢迎大家踊跃评论