一、结论
Cloudreve对接S3兼容存储桶的核心操作思路非常清晰,你只需要提前准备好Endpoint、AccessKey、SecretKey、Bucket、Region这5项核心S3接入信息,然后在Cloudreve后台的存储策略模块选择S3兼容存储类型,填写对应参数并测试连接即可完成配置,全程不需要修改代码,普通站长半小时内即可完成基础对接。
二、准备工作
操作前需要提前准备好以下内容,避免配置过程中反复切换页面中断流程:
- 已经完成搭建并可以正常访问的Cloudreve站点(开源版、商业版均支持)
- S3兼容对象存储服务的账号,且账号拥有存储桶管理、密钥管理的权限
- 已经提前创建完成的存储桶Bucket,且存储桶的访问权限符合你的业务需求(如公开读适合图床场景、私有读适合内部网盘场景)
- 对象存储服务商提供的Endpoint地址、AccessKey、SecretKey、Region区域标识
- 一个1M以内的测试文件(如图片、文档),用于后续验证配置是否生效
- 如果你需要自定义访问域名,需要提前将域名解析到对应存储桶的访问地址并完成备案
三、操作步骤
每一步操作都明确对应操作内容和预期结果,避免操作失误:
1. 登录Cloudreve后台管理界面,在左侧菜单栏找到「存储策略」入口,点击进入后选择「新建存储策略」,在弹出的存储类型选择页中选中「S3兼容存储」,完成这一步后会自动进入S3参数配置界面。
2. 按照界面提示依次填入提前准备的Endpoint、AccessKey、SecretKey、Bucket、Region等必填参数,存储类别、签名版本等可选参数按照对象存储服务商的官方说明填写即可,填完后先不要点击保存。
3. 下拉页面找到存储路径配置、访问域名配置模块,根据业务需要设置文件存储的前缀规则、直链有效期、缓存策略:如果用于公开图床场景可以设置缓存时间为30天,如果用于私有网盘场景可以设置直链有效期为15分钟,不需要特殊规则的场景可以保持默认配置。
4. 点击页面底部的「测试连接」按钮,系统会自动向对应存储桶写入一个临时测试文件,如果页面提示「连接成功」则说明参数填写没有问题,如果提示连接失败则需要回到参数填写页核对各项信息。
5. 连接测试通过后,点击保存按钮存储当前配置,然后进入「用户组」或者「单个用户」的权限设置页面,把新创建的S3存储策略分配给对应的用户群体,保存后对应权限的用户就能在Cloudreve前端看到新的存储位置选项。
6. 切换到普通用户账号登录Cloudreve前端,选择刚刚配置的S3存储位置,上传之前准备好的测试文件,上传成功后复制分享链接或者直接点击预览,确认文件可以正常访问、下载,没有权限错误或者404问题。
7. 如果需要对接网站附件、图床等外部场景,可以在Cloudreve后台开启对应存储策略的直链功能,把生成的文件直链接入对应的站点程序即可完成后续业务对接。
四、常见错误
以下是Cloudreve配置S3存储桶过程中最容易遇到的6类问题,以及对应的解决建议:
- Endpoint填写错误:很多用户会多打http前缀、漏写服务商指定的端口或路径后缀,或者错误使用了管理后台地址而非S3接入地址,解决建议是直接复制服务商提供的完整Endpoint地址,不要手动输入,同时确认地址是否需要携带http/https前缀。
- AccessKey或SecretKey填错:容易多复制前后空格、混淆AccessKey ID和SecretKey,或者使用了已经失效的密钥,解决建议是重新从服务商后台复制完整的密钥信息,注意不要把SecretKey泄露到公开代码、截图等场景避免安全风险。
- Bucket名称不一致:比如大小写写错、多写了后缀或者混淆了不同区域的存储桶名称,解决建议是直接从对象存储后台复制存储桶的准确名称,同时确认存储桶已经在对应Region下成功创建且没有被删除。
- Region填写不匹配:多数S3服务要求Region必须和存储桶所在区域完全一致,填错会导致签名验证失败,解决建议是查看服务商的S3接入文档确认对应Region的标准写法,不要自行编造区域标识。
- 权限不足导致上传失败:要么是存储桶没有给对应AccessKey开通读写权限,要么是Cloudreve的存储策略设置了超出权限的操作,解决建议是先检查存储桶的访问控制策略,给当前使用的AccessKey开通PutObject、GetObject等必要操作权限。
- 上传成功但无法访问:要么是存储桶没有设置对应的公开读权限,要么是Cloudreve中填写的访问域名配置错误,解决建议是先在对象存储服务商后台直接测试文件访问是否正常,再核对Cloudreve里填写的访问域名是否和服务商提供的一致。
五、示例说明
以下是通用的S3存储策略配置项填写说明,不需要填写虚构的地址或密钥,按照实际获取的信息对应填写即可:
| 配置项 | 填写说明 |
| --- | --- |
| Endpoint | 填写对象存储服务商官方提供的完整S3接入地址,不需要自行拼接路径 |
| AccessKey | 填写服务商后台生成的AccessKey ID,注意不要和SecretKey混淆 |
| SecretKey | 填写和AccessKey配对的私密密钥,填写后不要泄露给第三方 |
| Bucket | 填写提前创建好的存储桶的准确名称,区分大小写 |
| Region | 填写存储桶所在区域的标准标识,严格按照服务商文档要求填写 |
| 访问域名 | 填写存储桶绑定的自定义域名或者服务商提供的默认访问域名 |
| 存储路径前缀 | 可留空,也可以填写比如cloudreve/files/用来区分同存储桶下的不同业务文件 |
六、更简单的方案
如果你不想自己搭建MinIO这类私有对象存储、不想额外维护服务器存储节点,也不想承担自建存储的硬件成本和运维风险,可以直接选择市面上成熟的兼容S3协议的云对象存储服务,不需要自己维护存储集群,扩容也更灵活,按需付费即可降低前期投入成本。
如果你需要一个兼容S3协议、适合Cloudreve存储源、图床搭建、资源站下载分发的对象存储服务,可以了解七彩云对象存储,它支持不限流量下载分发,接入门槛低,适合站长和中小开发者使用。
七、FAQ
Q1:Cloudreve开源版支持对接S3兼容存储吗?
A:支持,不管是开源版还是商业版Cloudreve都原生支持S3兼容存储的接入,不需要额外安装插件,直接在后台存储策略里按照流程配置即可使用。
Q2:配置S3存储策略后,之前存在本地存储的文件可以迁移到S3存储桶吗?
A:可以,Cloudreve后台自带存储策略迁移工具,你只需要选择对应的源存储策略和目标S3存储策略,提交迁移任务即可自动批量迁移文件,迁移完成后系统会自动更新文件的引用地址,不需要手动修改。
Q3:对接S3存储后,Cloudreve的分片上传、断点续传功能还能用吗?
A:只要你对接的S3存储服务支持标准S3分片上传接口,Cloudreve的分片上传、断点续传、大文件上传功能都可以正常使用,不需要额外做特殊配置。
Q4:可以给不同的用户组分配不同的S3存储桶吗?
A:可以,你可以创建多个对应不同存储桶的S3存储策略,分别给不同的用户组分配对应的存储策略,即可实现不同用户群体的存储资源隔离,满足多业务场景的需求。
八、总结
整个Cloudreve S3存储桶的配置流程可以概括为「准备S3接入参数→后台新建S3存储策略填写参数→测试连接→分配权限→验证上传访问」四个核心环节,全程可视化操作,不需要修改代码,有基础运维能力的站长和开发者都可以快速完成。
这个配置方案适合个人网盘搭建、团队共享存储、网站附件存储、图床资源管理、资源站下载分发等多种场景,对接S3存储后可以大幅降低Cloudreve所在服务器的存储压力和带宽成本,同时提升文件访问的稳定性和下载速度,是目前Cloudreve用户首选的存储扩展方案。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网