墨迹语 CMS

v1.0.0 使用说明

技术架构

本文档介绍墨迹语 CMS 系统的技术架构和实现细节。

架构模式

墨迹语 CMS 采用经典的 MVC(Model-View-Controller)架构模式:

MVC 三层架构

  • Model(模型层) - 位于 app/models/,负责数据访问和业务逻辑
  • View(视图层) - 位于 app/views/,负责模板渲染和展示
  • Controller(控制器层) - 位于 app/controllers/,负责请求处理和业务协调

目录结构

项目根目录/
├── app/                    # 应用目录
│   ├── controllers/       # 控制器
│   │   ├── admin/         # 后台控制器
│   │   └── frontend/      # 前台控制器
│   ├── models/            # 模型
│   ├── views/             # 视图模板
│   ├── helpers/           # 辅助函数
│   └── services/          # 服务层
├── core/                   # 核心框架
│   ├── Controller.php     # 控制器基类
│   ├── Model.php          # 模型基类
│   ├── View.php           # 视图引擎
│   ├── Database.php      # 数据库类
│   └── Router.php        # 路由类
├── config/                 # 配置文件
├── public/                 # 公共资源
└── storage/                # 存储目录

核心技术

1. 路由系统

  • 基于 Router.php 的路由解析
  • 支持 RESTful 风格路由
  • 动态路由支持

2. 数据库访问

  • 基于 PDO 的数据库操作
  • ORM 风格的模型类
  • 支持事务处理

3. 模板引擎

  • 自定义模板语法
  • 支持变量输出、条件判断、循环
  • 模板包含和继承

4. 缓存机制

  • 文件缓存系统
  • 可配置缓存生命周期
  • 支持缓存清理

安全特性

XSS 防护

  • 模板变量默认转义
  • HTML 内容使用不转义变量需谨慎

SQL 注入防护

  • 使用 PDO 预处理语句
  • 参数绑定

CSRF 防护

  • Session 验证
  • Token 机制

性能优化

缓存策略

  • 页面缓存
  • 数据查询缓存
  • 静态资源缓存

数据库优化

  • 索引优化
  • 查询优化
  • 分表设计(文章表按栏目分表)

扩展性

模块化设计

  • 控制器模块化
  • 服务层分离
  • 辅助函数库

插件机制

  • 支持自定义控制器
  • 支持自定义模板
  • 支持扩展服务

技术栈

技术 用途
PHP 后端开发语言
MySQL 数据库
PDO 数据库访问
自定义模板引擎 视图渲染
Quill 富文本编辑器
Font Awesome 图标库
提示: 更多技术细节请查看源代码和相关文档。