feat: 初始化知识库系统项目
- 实现基于 Laravel 11 和 Filament 3.X 的文档管理系统 - 添加用户认证和分组管理功能 - 实现文档上传、分类和权限控制 - 集成 Word 文档自动转换为 Markdown - 集成 Meilisearch 全文搜索引擎 - 实现文档在线预览功能 - 添加安全日志和审计功能 - 完整的简体中文界面 - 包含完整的项目文档和部署指南 技术栈: - Laravel 11.x - Filament 3.X - Meilisearch 1.5+ - Pandoc 文档转换 - Redis 队列系统 - Pest PHP 测试框架
This commit is contained in:
113
config/documents.php
Normal file
113
config/documents.php
Normal file
@@ -0,0 +1,113 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| 文档转换配置
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| 这里配置文档转换相关的设置,包括转换驱动、超时时间和队列配置。
|
||||
|
|
||||
*/
|
||||
|
||||
'conversion' => [
|
||||
/*
|
||||
| 转换驱动
|
||||
| 支持的驱动: 'pandoc', 'phpword'
|
||||
| 推荐使用 pandoc 以获得更好的转换质量
|
||||
*/
|
||||
'driver' => env('DOCUMENT_CONVERSION_DRIVER', 'pandoc'),
|
||||
|
||||
/*
|
||||
| Pandoc 可执行文件路径
|
||||
| 如果 pandoc 在系统 PATH 中,可以直接使用 'pandoc'
|
||||
| 否则需要指定完整路径,如 '/usr/local/bin/pandoc'
|
||||
*/
|
||||
'pandoc_path' => env('PANDOC_PATH', '/opt/homebrew/bin/pandoc'),
|
||||
|
||||
/*
|
||||
| 转换超时时间(秒)
|
||||
| 大文档可能需要更长的转换时间
|
||||
*/
|
||||
'timeout' => env('CONVERSION_TIMEOUT', 300),
|
||||
|
||||
/*
|
||||
| 队列名称
|
||||
| 文档转换任务将被分发到此队列
|
||||
*/
|
||||
'queue' => env('CONVERSION_QUEUE', 'documents'),
|
||||
|
||||
/*
|
||||
| 转换失败后的重试次数
|
||||
*/
|
||||
'retry_times' => env('CONVERSION_RETRY_TIMES', 3),
|
||||
|
||||
/*
|
||||
| 转换失败后的重试延迟(秒)
|
||||
*/
|
||||
'retry_delay' => env('CONVERSION_RETRY_DELAY', 60),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Markdown 配置
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Markdown 渲染和处理相关的配置。
|
||||
|
|
||||
*/
|
||||
|
||||
'markdown' => [
|
||||
/*
|
||||
| Markdown 渲染器
|
||||
| 支持的渲染器: 'commonmark', 'parsedown'
|
||||
*/
|
||||
'renderer' => env('MARKDOWN_RENDERER', 'commonmark'),
|
||||
|
||||
/*
|
||||
| 是否清理 HTML 以防止 XSS 攻击
|
||||
*/
|
||||
'sanitize' => env('MARKDOWN_SANITIZE', true),
|
||||
|
||||
/*
|
||||
| Markdown 预览长度(字符数)
|
||||
| 用于在数据库中存储的内容摘要
|
||||
*/
|
||||
'preview_length' => env('MARKDOWN_PREVIEW_LENGTH', 500),
|
||||
|
||||
/*
|
||||
| Markdown 文件最大大小(字节)
|
||||
| 超过此大小的文件将分块处理
|
||||
*/
|
||||
'max_file_size' => env('MARKDOWN_MAX_FILE_SIZE', 10485760), // 10MB
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| 存储配置
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| 文档和 Markdown 文件的存储配置。
|
||||
|
|
||||
*/
|
||||
|
||||
'storage' => [
|
||||
/*
|
||||
| 文档存储磁盘
|
||||
*/
|
||||
'documents_disk' => env('DOCUMENTS_DISK', 'documents'),
|
||||
|
||||
/*
|
||||
| Markdown 存储磁盘
|
||||
*/
|
||||
'markdown_disk' => env('MARKDOWN_DISK', 'markdown'),
|
||||
|
||||
/*
|
||||
| 是否按日期组织文件目录
|
||||
| 格式: YYYY/MM/DD/
|
||||
*/
|
||||
'organize_by_date' => env('STORAGE_ORGANIZE_BY_DATE', true),
|
||||
],
|
||||
|
||||
];
|
||||
Reference in New Issue
Block a user