切换主题
📁 业务文件夹配置
🎯 功能概述
业务文件夹配置允许您为不同的业务类型设置独立的文件存储路径,实现文件存储的隔离和管理。
⚙️ 配置说明
配置项
配置项 | 类型 | 必填 | 说明 | 示例值 |
---|---|---|---|---|
business-folder | String | 否 | 业务文件夹名称,上传文件路径会拼接此文件夹 | demo-files |
配置示例
yaml
files:
- business-type: demo
file-type: local
root-path: /srv/file/data
business-folder: demo-files # 业务文件夹配置
http-access-path: https://www.wueasy.com
allowed-upload-suffix: jpg,png,gif,bmp,pdf,doc
max-size: 100MB
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
📂 路径生成规则
文件路径结构
当配置了业务文件夹后,上传的文件路径将按以下规则生成:
{业务文件夹}/{年}/{月}/{日}/{小时}/{UUID}.{扩展名}
1
示例
假设配置了 business-folder: demo-files
,上传时间为 2024-08-25 23:30:45
,文件名为 example.jpg
:
生成的路径: demo-files/2024/08/25/23/891dc10b-9b8f-4d1a-bdcd-a298bcc6dc0b.jpg
完整存储路径
- 本地存储:
/srv/file/data/demo-files/2024/08/25/23/891dc10b-9b8f-4d1a-bdcd-a298bcc6dc0b.jpg
- OSS存储:
demo-files/2024/08/25/23/891dc10b-9b8f-4d1a-bdcd-a298bcc6dc0b.jpg
- COS存储:
demo-files/2024/08/25/23/891dc10b-9b8f-4d1a-bdcd-a298bcc6dc0b.jpg
🔄 多业务类型配置
配置示例
yaml
files:
# 用户头像业务
- business-type: avatar
file-type: local
root-path: /srv/file/data
business-folder: user-avatars
http-access-path: https://www.wueasy.com
allowed-upload-suffix: jpg,png,gif
max-size: 5MB
# 文档业务
- business-type: document
file-type: oss
business-folder: documents
bucket: file-bucket
endpoint: oss-cn-hangzhou.aliyuncs.com
access-key-id: your-access-key-id
access-key-secret: your-access-key-secret
allowed-upload-suffix: pdf,doc,docx,xls,xlsx
max-size: 50MB
# 图片业务
- business-type: image
file-type: cos
business-folder: images
bucket: image-bucket
endpoint: ap-beijing
access-key-id: your-access-key-id
access-key-secret: your-access-key-secret
allowed-upload-suffix: jpg,png,gif,bmp,webp
max-size: 10MB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
路径隔离效果
不同业务类型的文件将存储在不同的文件夹中:
- 用户头像:
user-avatars/2024/08/25/23/xxx.jpg
- 文档:
documents/2024/08/25/23/xxx.pdf
- 图片:
images/2024/08/25/23/xxx.png
💡 使用建议
1. 命名规范
- 使用有意义的文件夹名称
- 避免使用特殊字符
- 建议使用小写字母和连字符
推荐: user-avatars
, product-images
, documents
不推荐: User Avatars
, product_images
, docs
2. 业务隔离
- 为不同业务类型设置独立的文件夹
- 便于文件管理和权限控制
- 支持按业务类型进行备份和恢复
3. 存储优化
- 根据业务特点选择合适的存储类型
- 合理设置文件大小限制
- 定期清理无用文件
🔧 配置验证
验证步骤
检查配置文件
bash# 验证YAML语法 yamllint config.yaml
1
2测试文件上传
bash# 上传测试文件 curl -X POST -F "file=@test.jpg" http://localhost:9830/upload/demo
1
2验证文件路径
bash# 检查生成的文件路径 ls -la /srv/file/data/demo-files/
1
2
常见问题
Q: 不配置业务文件夹会怎样? A: 文件将直接存储在根目录下,路径格式为 {年}/{月}/{日}/{小时}/{UUID}.{扩展名}
Q: 业务文件夹名称可以包含路径分隔符吗? A: 建议不要使用路径分隔符,系统会自动处理路径拼接
Q: 如何修改已配置的业务文件夹? A: 修改配置文件后重启服务,新上传的文件将使用新的文件夹路径