文件存储
配置 S3 或本地文件系统存储。
NextSaas 包含一个文件存储系统,支持 S3 兼容提供商(AWS S3、Cloudflare R2、MinIO 等)和用于开发的本地文件系统存储。
设置
S3 存储(推荐用于生产环境)
- 设置一个 S3 兼容的存储服务(例如 Cloudflare R2、AWS S3)。
- 创建两个存储桶 — 一个用于公开文件,一个用于私有文件。
- 配置您的
.env:
STORAGE_PROVIDER="s3"
S3_ENDPOINT="https://your-endpoint.com"
S3_REGION="auto"
S3_ACCESS_KEY_ID="your-access-key"
S3_SECRET_ACCESS_KEY="your-secret-key"
S3_PUBLIC_BUCKET="your-public-bucket"
S3_PRIVATE_BUCKET="your-private-bucket"
S3_PUBLIC_URL="https://your-cdn-url.com" # 可选:公开文件的 CDN URL本地存储(开发环境)
若无需设置 S3 即可快速进行开发,请使用本地文件系统存储:
STORAGE_PROVIDER="local"本地存储将文件保存在项目目录下,并通过本地开发服务器提供访问。
存储桶
NextSaas 使用两种存储桶:
| 存储桶 | 用途 | 访问方式 |
|---|---|---|
public | 用户头像、公开资源 | 直接 URL 访问 |
private | 用户文档、敏感文件 | 带过期时间的预签名 URL |
功能特性
头像上传
NextSaas 内置了完整的头像上传工作流:
- 图片裁剪:用户可以在上传前通过拖拽界面裁剪图片
- 自动调整大小:图片在上传前在客户端进行处理
- 公开存储:头像存储在公开存储桶中,可直接访问
头像上传 UI 已集成到仪表盘设置中的用户资料部分。
[!TIP] 如果您不需要文件存储,可以不配置存储相关的环境变量。该功能将自动禁用,相关的 UI 元素也会隐藏。