Skip to content

Halo 文档

快速导航

简介

Halo 是一款现代化的开源博客/CMS系统,基于 Java 开发。它支持多主题、插件扩展,并提供丰富的 REST API。采用 Spring Boot 框架开发,支持多数据库,提供优雅的用户界面和丰富的功能特性。

核心特性

  • 现代化架构

    • 基于 Spring Boot 开发
    • 支持多数据库(H2/MySQL/PostgreSQL)
    • 完整的 REST API
    • 前后端分离设计
  • 插件系统

    • 强大的插件扩展能力
    • 丰富的官方插件
    • 支持自定义插件开发
    • 插件热插拔
  • 主题系统

    • 响应式主题支持
    • 在线主题安装
    • 自定义主题开发
    • 主题市场
  • 安全可靠

    • 完善的权限控制
    • XSS 防护
    • 文件上传限制
    • 定期安全更新

适用场景

  • 个人博客
  • 企业官网
  • 知识库
  • 团队博客
  • 内容管理系统
  • 文档网站

快速开始

环境要求

  • JDK 17 或更高版本
  • 内存 512MB 以上
  • 磁盘空间 1GB 以上
  • 支持的数据库:
    • H2(默认)
    • MySQL 8.0+
    • PostgreSQL

安装方式

常规安装

  1. 检查 Java 版本
bash
java -version
  1. 下载最新版本
bash
wget https://dl.halo.run/release/halo-2.x.x.jar
  1. 运行应用
bash
java -jar halo-2.x.x.jar

Docker 安装(推荐)

bash
docker run -d \
  --name halo \
  -p 8090:8090 \
  -v ~/.halo2:/root/.halo2 \
  halohub/halo:2.x

基础功能

内容管理

文章管理

  1. 创建文章

    • 进入控制台
    • 点击「文章」→「写文章」
    • 填写内容并发布
  2. 编辑文章

    • 在文章列表选择文章
    • 修改内容
    • 点击「更新」

页面管理

  1. 创建页面

    • 点击「页面」→「新建页面」
    • 填写内容
    • 设置属性
    • 发布页面
  2. 编辑页面

    • 选择目标页面
    • 修改内容
    • 更新页面

分类与标签

分类管理

  • 创建分类
  • 编辑分类信息
  • 管理分类层级
  • 分类文章关联

标签管理

  • 创建新标签
  • 编辑标签信息
  • 标签文章关联
  • 标签云展示

评论系统

评论设置

  • 评论审核
  • 反垃圾设置
  • 评论通知
  • 评论回复

评论管理

  • 查看评论列表
  • 审核新评论
  • 回复评论
  • 删除垃圾评论

系统配置

基础设置

  1. 网站信息

    • 站点标题
    • 站点描述
    • Logo 设置
    • favicon 设置
  2. 个性化设置

    • 主题选择
    • 菜单配置
    • 页面布局
    • 功能开关

高级设置

  1. 系统优化

    • 缓存配置
    • 性能优化
    • 资源压缩
    • CDN 设置
  2. 安全配置

    • 访问控制
    • SSL 证书
    • 防火墙规则
    • 备份策略

主题开发

主题结构

theme
├── templates/
│   ├── index.html
│   ├── post.html
│   └── page.html
├── static/
│   ├── css/
│   └── js/
└── theme.yaml

模板语法

html
<!-- 文章列表循环 -->
<#list posts.content as post>
    <article>
        <h2>${post.title}</h2>
        <div>${post.summary}</div>
    </article>
</#list>

插件开发

插件结构

plugin
├── src/
│   └── main/
│       ├── java/
│       └── resources/
└── pom.xml

示例代码

java
@Component
public class MyPlugin extends BasePlugin {
    @Override
    public void start() {
        // 插件启动逻辑
    }
}

维护与优化

性能优化

  1. 缓存优化

    • 配置缓存策略
    • 设置缓存时间
    • 清理缓存
  2. 图片优化

    • 图片压缩
    • 懒加载配置
    • CDN 加速

备份恢复

  1. 数据备份

    • 定期备份
    • 自动备份
    • 备份验证
  2. 数据恢复

    • 选择备份文件
    • 确认恢复操作
    • 验证恢复结果