Skip to content

管理后台

本节说明CMS模式下的管理后台入口、功能清单、前端集成与CMS管理端点索引,包含静态资源与附件说明,仅适用于CMS模式。

CMS模式提供完整的管理后台,用于配置站点、主题、插件、内容与附件等。后台通过统一前缀访问,前端可独立部署并调用CMS管理端点。

后台入口

  • 路由前缀/admin
  • 访问示例https://your-domain.com/admin,具体入口以部署的前端为准,独立 Admin SPA 的根路径即后台首页。

管理后台及下文所列端点仅在CMS模式下可用,API模式无CMS后台与CMS专用端点。

功能清单

功能说明
设置基本设置如站点名称、描述、关键词、API 前缀等,主题切换与主题设置项
主题主题列表、切换主题、主题选项,存于 options 表 theme:主题名
插件插件列表、上传、启用、停用、删除,插件设置存于 options 表 plugin:插件名
文章文章/页面增删改查,分类与标签关联
评论评论列表、高级筛选(状态/类型/根或回复/关键词/日期)、编辑内容、通过/待审核/垃圾/回收站、删除;展示 IP、解析 UA(浏览器·系统)、回复关系与子评论高亮,详见 评论功能
分类分类增删改查
标签标签增删改查
附件附件上传、列表、删除,按类型分类存储
统计文章、评论、附件、用户等统计数据
访问日志访问日志查看、统计、筛选(IP、路径、类型、日期范围等),详见 访问日志

前端集成

管理后台前端通过 CMS 管理端点与后端交互,需使用 /anon/cms/admin 前缀。认证流程如 Token、登录状态检查、用户信息与通用 前端框架集成 一致,baseURL 指向 CMS 管理前缀。详见 前端框架集成

CMS 管理端点索引

以下为 CMS 管理相关端点摘要,完整请求/响应格式见 API 端点

  • 认证GET /anon/cms/admin/auth/tokenGET /anon/cms/admin/auth/check-loginGET /anon/cms/admin/user/info
  • 配置GET /anon/cms/admin/config
  • 统计GET /anon/cms/admin/statistics
  • 设置GET/POST /anon/cms/admin/settings/basicGET/POST /anon/cms/admin/settings/themeGET/POST /anon/cms/admin/settings/theme-options
  • 插件:GET 列表、POST 上传、PUT 启用或停用、DELETE 删除;GET/POST plugins/options 获取与保存插件设置项
  • 附件GET/POST/DELETE /anon/cms/admin/attachments
  • 分类GET/POST/PUT/DELETE /anon/cms/admin/metas/categories
  • 标签GET/POST/PUT/DELETE /anon/cms/admin/metas/tags
  • 文章GET/POST/PUT/DELETE /anon/cms/admin/posts
  • 评论GET/PUT/DELETE /anon/cms/admin/comments(列表、更新状态/内容、删除)
  • 访问日志GET /anon/cms/admin/access-logs(列表)、GET /anon/cms/admin/access-logs/statistics(统计)

访问日志

CMS 管理后台提供访问日志的查看和统计功能。

完整的访问日志系统说明,包括启用方法、配置选项、使用场景、性能优化等,请参考 访问日志系统

管理后台功能

  • 列表查看:分页浏览所有访问记录
  • 筛选过滤:按 IP、路径、类型、日期范围筛选
  • 统计数据:展示今日访问、总访问、独立访客等指标
  • 导出功能:支持导出 CSV 格式数据

API 端点

管理后台通过以下 API 获取访问日志数据:

GET    /anon/cms/admin/access-logs          # 日志列表
GET    /anon/cms/admin/access-logs/statistics # 统计数据

请求参数和响应格式详见 访问日志系统 - API 接口

路由注册与元数据

管理路由由 Anon_Cms_Admin::initRoutes() 注册,可通过 Anon_Cms_Admin::addRoute() 扩展。元数据支持:requireLoginrequireAdminmethodtoken。全局配置可通过 Anon_System_Config::getConfig() 获取,并由 config 钩子扩展。

静态资源与附件

附件目录结构

上传文件按类型自动归类存储:

Upload/
├── image/          # 图片
├── video/          # 视频
├── audio/          # 音频
├── document/       # 文档
└── other/          # 其他

上传与命名

  • 命名规则:{16 位十六进制}-{时间戳}.{扩展名},例如 a1b2c3d4e5f67890-1760000000.jpg
  • 主题与插件上传支持 ZIP 包,无目录层级时按约定解析,具体以实现为准。

附件 URL 规则

  • 原始文件/anon/static/upload/{filetype}/{baseName},URL 不包含后缀,避免按静态规则 404
  • 图片格式转换/anon/static/upload/{filetype}/{baseName}/{format},支持 webpjpgjpegpng
  • 转换结果缓存于 Upload/{filetype}/processed/,避免重复处理

示例:

text
# 原始图片
GET /anon/static/upload/image/a1b2c3d4e5f67890-1760000000

# WebP 格式
GET /anon/static/upload/image/a1b2c3d4e5f67890-1760000000/webp

API 端点 中静态文件小节保持一致。

Released under the MIT License.