功能全景

全面了解 GEO Wiki Pro 的所有功能模块,从文档管理到 AI 优化,从安全机制到部署方案。

## 文档管理 ### Markdown 原生编辑 GEO Wiki Pro 以 Markdown 作为一等文档格式。每个文档包含 YAML Frontmatter 元数据头,支持以下字段: - `title`:文档标题 - `slug`:URL 别名(唯一标识符) - `category`:所属分类 - `tags`:标签数组 - `author`:作者 - `sort`:分类内排序权重 - `description`:搜索结果摘要 ### 扩展 Markdown 语法 除了标准 Markdown,还支持以下扩展语法: | 语法 | 说明 | 示例 | |------|------|------| | `:::video[说明](url)` | 视频嵌入 | `:::video[B站视频](https://bilibili.com/video/BVxxx)` | | `:::model[标题](url)` | 3D 模型下载卡片 | `:::model[电机模型](/media/model.step)` | | `![alt](url)` | 图片(alt 自动显示为图注) | `![接线图](/media/wiring.png)` | | `调用块` | 提示/警告/危险等 Callout | `::: tip\n提示内容\n:::` | ### 分类与标签 - **分类**:树形结构组织文档,每个分类可设置独立的排序、描述和通知横幅 - **标签**:灵活的多标签系统,支持按标签筛选文档 - **排序**:分类内文档支持拖拽排序,排序值自动同步到所有语言版本 ### 全文搜索 基于 Fuse.js 的客户端模糊搜索,支持: - 标题和内容全文匹配 - 按分类筛选 - 即时搜索结果反馈 ## 多语言系统 ### 内置语言支持 - **中文**(zh):默认语言 - **英文**(en) - **日文**(jp) ### 共享字段同步 `category`、`tags`、`author`、`sort` 是**共享字段**——更新一个语言版本时,这些字段会自动同步到其他语言版本。无需手动保持一致。 ### 级联合并 当请求非默认语言的文档列表时,系统执行**级联合并**: 1. 先读取默认语言(中文)的所有文档作为基础 2. 叠加目标语言的文档 3. 仅存在于一种语言中的文档也会出现在结果中 这意味着即使某个文档只有中文版本,英文和日文用户也能看到它。 ## GEO 优化 ### 自动 GEO 文件生成 GEO Wiki Pro 会自动生成以下文件,帮助 AI 搜索引擎更好地理解和索引你的内容: - **llms.txt**:AI 友好的站点概览,包含所有文档的标题、摘要和链接 - **sitemap.xml**:标准 XML 站点地图,帮助搜索引擎发现所有页面 - **结构化数据**:符合 Schema.org 标准的文档元数据 ### GEO 分析仪表盘 管理后台提供 GEO 分析页面,展示: - llms.txt 和 sitemap.xml 的当前状态 - 文档覆盖率统计 - 一键重新生成功能 ## 安全机制 ### 认证与授权 - **JWT 认证**:基于 httpOnly Cookie 的无状态认证,2 小时自动过期 - **角色控制**:支持 admin、editor、viewer 三种角色 - **密码安全**:bcrypt 加密存储,首次登录强制修改密码 - **CSRF 防护**:Double-Submit Cookie HMAC 机制 ### 内容安全 - **CSP 策略**:基于 Nonce 的 Content Security Policy,防止 XSS 攻击 - **速率限制**:全局 300 次/分钟,认证接口 10 次/分钟 - **文件上传安全**:Magic Bytes 类型检测 + 文件名编码 - **输入过滤**:customHeadHtml 自动过滤 `<script>`、`<iframe>` 和事件属性 - **Slug 验证**:正则校验 + 长度限制 + 去重检查 ## 协作功能 ### 草稿审批流程 1. 编辑者创建草稿(保存到 `drafts/` 目录) 2. 管理员审核草稿内容 3. 审核通过后一键发布到正式文档 ### 版本历史 - 每次文档更新自动保存历史版本 - 支持查看和对比历史版本 - 版本历史存储在 `history/` 目录 ### 反馈系统 - 读者可在文档页面提交反馈 - 管理员在后台查看和处理反馈 - 支持反馈状态跟踪 ## 部署方案 ### Docker 部署 ```bash cp .env.example .env # 设置 JWT_SECRET docker-compose up -d curl http://localhost:3002/api/v1/health ``` ### NAS 部署 支持 UGREEN DXP4800 等 NAS 设备,通过 Docker Compose 部署。 ### 宝塔面板部署 支持通过宝塔面板的 PM2 管理器部署,适合国内服务器环境。 ## CLI 工具 GEO Wiki Pro 提供功能完整的命令行工具 `geo`,支持: - 文档 CRUD 操作 - 分类和标签管理 - 配置管理 - 媒体文件上传 - GEO 文件重建 - 全文搜索 ```bash geo doc list --category getting-started geo doc create --file article.md --category getting-started --sort 3 geo config update --hero-title "Welcome" ```