一、结论
Cloudreve支持通过标准S3兼容协议接入对象存储作为后端存储。接入前需准备好Endpoint、AccessKey、SecretKey、Bucket、Region五类核心参数,在Cloudreve后台添加对应S3存储策略并测试连通性后,即可正常上传、管理文件。
二、准备工作
开始配置前,请确认已准备好以下内容,避免中途频繁切换控制台:
- 拥有管理员权限的Cloudreve站点,且站点服务运行正常,可正常登录管理后台
- 兼容标准S3协议的对象存储服务账号,且已开通对象存储服务权限
- 提前在对象存储控制台创建好的存储桶(Bucket),可根据网盘业务的访问需求设置私有或公共读权限
- 对象存储服务方提供的完整接入信息:Endpoint访问地址、AccessKey(访问密钥ID)、SecretKey(私有访问密钥)、Region(存储桶所属地域标识)
- 1-2个体积较小的测试文件(如文本文档、压缩后的图片),用于验证上传、下载链路是否正常
三、操作步骤
1. 创建并配置存储桶:登录对象存储服务商的控制台,新建一个存储桶,根据网盘的访问需求设置权限(私有读写或公共读),也可提前配置好生命周期、备份等规则。操作结果: 获得可用的对象存储空间,记录下准确的存储桶名称。
2. 获取S3接入凭证:在对象存储控制台的密钥管理页面,创建或查看已有的访问密钥,同时确认存储桶对应的Endpoint地址和Region地域信息。操作结果: 拿到Endpoint、AccessKey、SecretKey、Region、Bucket全部必填接入参数,建议妥善保管私有密钥,不要公开泄露。
3. 进入Cloudreve存储配置页:使用管理员账号登录Cloudreve管理后台,在系统设置类菜单中找到存储策略配置入口,选择新增存储策略。操作结果: 进入存储后端类型选择页面,可看到本地存储、S3兼容存储等可选类型。
4. 选择S3兼容存储类型:在存储类型列表中选择S3协议兼容的对象存储选项,不同版本的Cloudreve命名可能略有差异,选择标注S3、对象存储相关的选项即可。操作结果: 打开S3存储的参数配置表单。
5. 填写核心配置参数:按照表单提示依次填入提前准备好的Endpoint、AccessKey、SecretKey、Bucket名称、Region信息;若有路径前缀、自定义访问域名、权限控制等可选项,可根据业务需求填写,无特殊需求保持默认即可。操作结果: 所有必填项填写完成,可选配置符合自身业务规则。
6. 测试连接并保存策略:先使用表单自带的连接测试功能验证参数有效性,若提示连接失败可先对照参数排查,测试通过后保存存储策略。操作结果: 新的S3存储策略出现在Cloudreve的存储策略列表中,状态显示正常。
7. 上传测试验证全链路:将新添加的对象存储策略设置为默认存储策略(或对应用户组的可用策略),上传提前准备的测试文件,上传完成后依次测试预览、下载、分享功能。操作结果: 确认文件实际存储到对象存储桶中,上传、访问、下载、分享全流程正常。
8. 正式投入业务使用:测试无误后,后续对应范围的用户上传的文件都会自动存储到对接的对象存储中,无需额外操作。操作结果: 网盘系统正式使用对象存储作为后端,可承载更多文件存储和分发需求。
四、常见错误
配置过程中如果出现连接失败、上传异常等问题,可优先对照以下常见原因排查:
- Endpoint填写错误:新手常出现误拼接存储桶名称、复制时带空格、外网环境使用内网地址等问题。建议对照服务商官方文档复制完整地址,确认Cloudreve所在服务器可正常访问该地址,不要自行增减http/https前缀或额外路径。
- AccessKey或SecretKey错误:比如复制时漏填字符、前后带空格、混用了其他账号的密钥。建议重新到密钥管理页面完整复制,粘贴后检查输入框内容,确认密钥属于拥有存储桶权限的账号。
- Bucket或Region不匹配:桶名拼写错误、地域和存储桶实际所属地域不一致是高频问题。建议到对象存储控制台核对存储桶全称和所属地域,严格按照服务商给出的信息填写,不要自行简写地域标识。
- 权限不足导致操作失败:如果密钥只有只读权限,或存储桶策略限制了写入、删除操作,会出现连接正常但上传、删除失败的问题。建议检查密钥的权限策略,确认拥有对象的读写、删除权限,同时核对存储桶的访问规则。
- 上传成功但访问链接不可用:如果存储桶为私有读写但未配置签名URL,或访问域名、路径前缀填写错误,都会导致链接无法打开。私有桶需确认程序已开启临时签名访问,公共读桶需核对访问域名和路径配置是否正确。
- Object Key格式不规范:文件名包含特殊字符、未转义中文、出现连续斜杠或开头斜杠,可能导致路径异常。建议尽量使用规范的英文、数字命名文件,或确认程序已自动对路径做转义处理,符合S3路径规范。
五、示例说明
以下为通用配置参考,所有内容仅为字段说明,实际填写时请替换为你使用的对象存储服务商提供的真实信息,不要直接使用示例内容:
| 配置字段 | 填写规则 |
| --- | --- |
| Endpoint | 填写服务商提供的S3协议专属访问地址,无需拼接存储桶名称 |
| AccessKey | 填写访问密钥ID,优先使用仅拥有当前存储桶权限的子账号密钥 |
| SecretKey | 填写与AccessKey配对的私有密钥,仅在服务端配置,不要对外泄露 |
| Bucket | 填写提前创建完成的存储桶完整名称,部分服务商的桶名区分大小写 |
| Region | 填写存储桶所属的地域标识,若程序标注为可选,可根据服务商要求留空 |
如果配置页还有路径前缀、CDN加速域名、文件分片大小等可选项,可根据自身业务需求调整,没有特殊需求保持默认值即可。
六、更简单的方案
如果选择自行搭建MinIO等开源对象存储服务,需要额外准备服务器、配置存储集群、处理数据备份和扩容,还要承担服务器带宽被占满影响站点访问的风险,对个人站长和中小团队来说运维成本较高。
如果不想维护底层存储服务器,也可以直接选择商用的兼容S3协议的云对象存储,开通服务后即可获取接入参数,无需额外部署。如果你需要兼容标准S3协议、适合作为Cloudreve这类网盘系统的存储源,同时也能支撑图床、资源下载站等文件分发场景的服务,可以了解 七彩云对象存储,它支持标准S3接入和不限流量的下载分发,按照上述步骤即可快速完成对接,适合低门槛使用对象存储的项目。
七、FAQ
Q1:Cloudreve支持用什么存储?
A:Cloudreve原生支持本地服务器磁盘作为存储后端,同时兼容所有支持标准S3协议的对象存储服务,部分版本也适配了个别厂商的专属存储类型。如果是初期文件量小的测试站点,用本地存储即可;如果是正式运营、用户量较多的网盘,选择S3对象存储更方便扩容,也不会占用服务器自身带宽。
Q2:对接对象存储后,Cloudreve的分享、鉴权功能会受影响吗?
A:不会受到影响。Cloudreve的用户权限、提取码、分享有效期、下载限速等上层业务逻辑都是由程序自身控制的,对象存储仅负责底层文件的存储和分发,原有功能都可以正常使用。
Q3:连接测试成功,但上传文件失败是什么原因?
A:连接测试正常通常说明网络通畅、密钥身份有效,上传失败大多是权限或配额问题:可先检查AccessKey对应的账号是否拥有存储桶的对象写入权限,再确认存储桶的访问策略没有拦截上传请求,最后查看存储桶的容量配额是否已经用尽。
Q4:可以同时使用本地存储和对象存储吗?
A:可以。Cloudreve支持添加多个存储策略,你可以为不同用户组分配不同的存储后端,也可以设置按文件大小、类型自动路由到对应存储,原有存储在本地的文件仍可正常访问,不会受到新策略的影响。
八、总结
Cloudreve接入S3兼容对象存储的操作门槛不高,核心流程可概括为“准备存储桶和接入参数-后台添加S3存储策略-测试验证后上线”,全程不需要修改程序代码,具备基础后台操作能力的站长即可完成。
这类S3接入方式不仅适用于Cloudreve网盘系统,同样可以复用在Alist、PicGo、Halo、WordPress等支持S3协议的工具和程序上,也适合图床、资源下载站、自建应用附件存储等场景,能够降低自建存储的运维成本,提升文件访问和分发的稳定性。
想进一步了解这个项目?
访问官网查看产品能力、适用场景和最新服务信息。
访问官网