存储配置
存储配置用于设置文件的存储方式,支持本地存储和多种云存储服务。通过配置存储服务,可以实现文件的统一管理、加速访问和备份保护。
配置概述
本页面包含多种存储服务的配置:
- 本地存储 - 将文件存储在服务器本地磁盘
- S3存储 - 兼容Amazon S3协议的存储服务
- 阿里云OSS - 阿里云对象存储服务
- 腾讯云COS - 腾讯云对象存储服务
- 七牛云 - 七牛云存储服务
这些配置修改后会立即生效,无需重启服务。可以同时配置多个存储服务,系统会按优先级选择。
配置项详解
本地存储
启用本地存储
- 说明: 是否启用本地存储功能
- 开启效果: 文件将存储在服务器本地磁盘
- 建议: 适合小型项目或测试环境使用
- 注意: 生产环境建议使用云存储
网站地址
- 说明: 网站的完整访问地址
- 示例:
https://www.example.com - 用途: 生成文件的访问URL
- 注意: 必填项
文件上传数量限制
- 说明: 限制同时上传的文件数量
- 示例:
5 - 默认值: 5个
- 建议: 根据服务器性能设置
文件大小限制
- 说明: 限制单个文件的大小
- 示例:
20 - 单位: MB
- 默认值: 20MB
- 建议: 根据网络带宽和存储空间设置
S3存储(兼容Amazon S3)
启用状态
- 说明: 是否启用S3存储
- 建议: 适合需要国际化的项目
端点地址
- 示例:
- AWS S3:
https://s3.amazonaws.com - Cloudflare R2:
https://<accountid>.r2.cloudflarestorage.com - MinIO:
http://localhost:9000
- AWS S3:
- 用途: S3 API访问地址
- 注意: 必填项
区域
- 示例:
us-east-1、ap-southeast-1 - 用途: S3存储桶所在区域
- 注意: 部分服务(如Cloudflare R2)不需要填写
存储桶名称
- 示例:
my-storage-bucket - 用途: 存储桶的唯一标识
- 注意: 必填项,全局唯一
访问密钥ID
- 说明: S3服务的访问凭证
- 用途: API认证
- 注意: 必填项,严格保密
密钥
- 说明: S3服务的访问密钥
- 用途: API认证
- 注意: 必填项,严格保密
阿里云OSS
启用状态
- 说明: 是否启用阿里云OSS
区域
- 示例:
oss-cn-hangzhou、oss-cn-beijing - 用途: 选择OSS服务所在区域
- 获取方式: 阿里云OSS控制台查看
存储桶名称
- 示例:
my-bucket - 用途: 存储空间名称
AccessKey ID
- 说明: 阿里云访问凭证
- 获取方式: 阿里云控制台创建
AccessKey Secret
- 说明: 阿里云访问密钥
- 获取方式: 阿里云控制台创建
腾讯云COS
启用状态
- 说明: 是否启用腾讯云COS
SecretId
- 说明: 腾讯云访问凭证
SecretKey
- 说明: 腾讯云访问密钥
存储桶名称
- 示例:
my-bucket-1234567890
区域
- 示例:
ap-guangzhou、ap-beijing
七牛云
启用状态
- 说明: 是否启用七牛云
存储桶名称
- 示例:
my-bucket
域名
- 说明: 七牛云绑定的域名
- 示例:
https://cdn.example.com
AccessKey
- 说明: 七牛云访问密钥
SecretKey
- 说明: 七牛云访问密钥
配置建议
存储方案选择
- 小型项目: 本地存储即可
- 生产环境: 推荐云存储(阿里云OSS或腾讯云COS)
- 国际化: 使用AWS S3或Cloudflare R2
- 成本考虑: 七牛云有免费额度
安全建议
- 定期更换访问密钥
- 使用RAM子账号,分配最小权限
- 设置存储桶访问策略,限制公开访问
- 启用日志记录,监控异常访问
性能优化
- 配置CDN加速文件访问
- 启用图片处理功能(缩略图、裁剪等)
- 设置合理的文件大小限制
- 使用分片上传大文件
常见问题
Q: 可以同时使用多个存储服务吗?
A: 可以。系统会按照配置的优先级选择存储服务。建议设置主存储和备用存储。
Q: 如何测试存储配置是否正确?
A: 保存配置后,尝试上传文件,检查是否能成功上传和访问。
Q: 文件上传失败怎么办?
A: 检查: 1)存储配置是否正确 2)访问密钥是否有效 3)存储桶是否存在 4)网络连接是否正常
Q: 如何获取阿里云OSS的AccessKey?
A: 登录阿里云控制台 → AccessKey管理 → 创建AccessKey
Q: 本地存储和云存储有什么区别?
A:
- 本地存储: 文件存在服务器磁盘,读写快但占用服务器空间,不适合分布式部署
- 云存储: 文件存在云端,无限容量、CDN加速、高可用,但需要付费
Q: 如何设置文件的公开访问权限?
A: 在云存储控制台设置存储桶的访问策略,或通过CORS配置允许跨域访问。