一、结论
Cloudreve添加S3协议存储源的核心逻辑是提前准备好S3兼容存储服务的Endpoint、AccessKey、SecretKey、Bucket、Region等核心接入信息,再在Cloudreve管理员后台的存储策略模块选择S3兼容类型,填入对应参数测试连通后即可正式使用,整个操作无需修改代码,仅通过后台可视化配置即可完成。
二、准备工作
操作前需要提前准备好以下内容:
- 拥有Cloudreve站点的管理员账号权限,且站点可正常访问
- 合规可用的S3兼容对象存储服务账号
- 提前在对象存储服务后台创建好的存储桶(Bucket)
- 对象存储服务商提供的Endpoint访问地址
- 拥有对应存储桶读写权限的AccessKey和SecretKey
- 存储桶对应的Region地域标识
- 1个小于10MB的测试用文件,用于验证上传、访问功能是否正常
三、操作步骤
1. 登录Cloudreve管理员后台,在左侧菜单栏找到「存储策略」选项,点击进入后选择「新建存储策略」,在弹出的存储类型列表中选择「S3兼容」,结果是成功打开S3存储源的专属配置表单页面。
2. 打开你所使用的S3对象存储服务的控制台,导出对应存储桶的接入参数,包括Endpoint、AccessKey、SecretKey、Bucket名称、Region,复制参数时注意不要包含多余空格或特殊字符,结果是确认所有必填参数完整、有效。
3. 回到Cloudreve的S3配置表单,将获取到的参数对应填入各个输入框,若服务商有特殊要求,可同步配置是否启用HTTPS、自定义访问域名、存储桶访问模式等可选配置,结果是所有必填参数均按要求填写完成,无缺漏项。
4. 点击配置页底部的「测试连通性」按钮,等待Cloudreve向S3存储服务发起连接验证,结果是系统提示「连接测试成功」,说明参数配置正确、Cloudreve所在服务器与S3存储服务的网络连通正常。
5. 连通测试通过后,点击「保存」按钮存储该策略,根据业务需求配置该存储策略的适用用户组、单文件大小限制、存储容量上限、允许的文件类型等规则,结果是该S3存储策略正式加入Cloudreve的可用存储列表。
6. 切换到普通用户账号,选择该S3存储对应的存储路径,上传提前准备好的测试文件,上传完成后依次尝试预览、下载、分享该文件,结果是文件可以正常上传、访问和下载,说明存储源接入完全成功。
7. 若站点面向公共用户提供下载服务,可进一步配置S3存储的缓存规则、CDN加速等拓展配置,适配资源站、下载站、图床等不同业务场景的需求,结果是存储源的访问速度、稳定性符合业务预期。
四、常见错误
1. Endpoint填写错误:常见问题包括手动输入时多写了后缀、漏了http/https前缀,或者误填存储桶的独立访问域名而非服务商提供的通用Endpoint,解决建议是直接从S3服务商的官方文档或控制台复制对应地域的Endpoint,不要手动输入。
2. 密钥校验失败:通常是AccessKey或SecretKey复制时带了多余空格、密钥已过期,或者该密钥没有分配对应存储桶的读写权限导致,解决建议是重新生成拥有对应Bucket全权限的密钥,复制时确认没有多余字符,同时检查密钥的生效状态和权限范围。
3. Region填写不匹配:比如填错了存储桶所属的地域代码,或者服务商无Region要求却填写了错误内容,解决建议是核对S3服务商提供的Region标识,部分服务商如果无Region要求可以填默认值或留空。
4. 上传成功但文件无法访问:多是由于存储桶设置了私有访问却没有配置签名访问,或者存储桶的跨域规则(CORS)没有允许Cloudreve站点的域名访问导致,解决建议是检查存储桶的访问策略和CORS规则,开放对应域名的访问权限,私有模式下确认Cloudreve已开启签名链接生成功能。
5. 连接测试提示网络不通:可能是Cloudreve所在服务器的防火墙拦截了对外的S3服务端口,或者服务商的Endpoint在服务器所在网络无法访问,解决建议是在Cloudreve服务器上使用curl命令测试Endpoint的连通性,放开防火墙对应端口的出站规则,若仍无法访问可联系存储服务商确认网络连通性。
五、示例说明
以下是Cloudreve S3存储源的通用配置说明,无真实参数,可对照实际获取的信息填写:
| 配置项 | 填写说明 |
| --- | --- |
| Endpoint | 填写S3对象存储服务官方提供的对应地域访问地址,不要填写存储桶的独立访问域名 |
| AccessKey | 填写从S3服务商后台生成的、拥有对应存储桶读写权限的访问密钥ID |
| SecretKey | 填写与上述AccessKey配对的密钥字符串 |
| Bucket | 填写提前创建好的存储桶的准确名称,注意大小写敏感 |
| Region | 填写存储桶所属地域的官方标识,如服务商无特殊要求可填写默认值或留空 |
| 自定义域名 | 如有绑定独立域名用于文件访问,可在此处填写,否则留空使用默认域名 |
| 存储桶访问模式 | 根据存储桶的权限设置选择公开读或私有,私有模式下Cloudreve会自动生成签名访问链接 |
六、更简单的方案
如果不想自行搭建MinIO等私有S3存储服务、不想额外维护存储服务器,也不想应对存储扩容、流量峰值、故障排查等运维问题,可以直接选择成熟的第三方兼容S3协议的云对象存储服务,开箱即可使用,无需自行运维底层存储资源。如果你需要一个兼容S3协议、适合程序接入、图床、网盘系统存储源和下载分发的对象存储服务,可以了解 七彩云对象存储,它支持标准S3协议,可直接作为Cloudreve的存储源使用,适配大文件存储、不限流量下载分发等多种场景。
七、FAQ
Q1:Cloudreve的开源免费版支持添加S3协议存储源吗?
A:支持,Cloudreve的开源免费版和付费商业版都内置了S3兼容存储的接入能力,无需额外安装插件即可完成配置,功能没有差异。
Q2:添加S3存储源后,之前存在本地服务器的文件可以迁移到S3存储吗?
A:可以,Cloudreve后台提供了存储策略迁移功能,你可以选择将指定用户、指定路径的文件批量迁移到新添加的S3存储源中,迁移过程不会中断文件的正常访问,也不会损坏原有文件。
Q3:配置时提示“签名不匹配”是什么原因?
A:签名不匹配通常是三类原因导致:一是AccessKey、SecretKey填写错误,存在多余空格或大小写错误;二是Endpoint、Region、Bucket名称与实际配置不匹配;三是Cloudreve所在服务器的系统时间与标准时间偏差过大,导致签名校验失败,建议逐一核对参数、同步服务器时间后重试。
Q4:Cloudreve会额外收取S3存储的流量或存储费用吗?
A:不会,Cloudreve本身是开源程序,不会收取任何存储或流量相关的费用,所有存储、流量费用均由你选择的S3对象存储服务商收取,你可以根据业务需求选择适合的套餐即可。
八、总结
整体来看,Cloudreve添加S3协议存储源的操作门槛很低,仅需提前准备好S3服务的接入参数,在后台完成参数填写、连通测试、策略配置三步即可完成接入,整个过程通常10分钟内就能完成。这种接入方式非常适合需要为Cloudreve扩容存储容量、降低本地服务器存储压力、提升大文件并发下载能力的场景,不管是个人搭建私有网盘、还是站长搭建公共资源站、下载站、图床,都可以通过接入S3兼容存储获得更稳定、更易扩展的存储和分发能力。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网