其他 S3
任何提供 S3 兼容 API 的服务都能接孤云 —— 端点与密钥由你的服务商提供,差别只在细节。
要准备三样:端点 / 桶名 / 密钥(地域由应用自动处理);端点推不出来,得从服务商文档里抄。
分步操作
-
第 1 步
确认它真的是 S3 兼容
- 服务商的文档里要有 S3 兼容 / S3 API / S3-compatible 这类字样,并给出一个 S3 端点:形如
https://s3.<区域>.<服务商域名>,或者像https://<账号>.r2.cloudflarestorage.com这种带账号的地址。 - 只有网页上传界面、没有 S3 端点的服务接不上孤云。例如 Cloudflare R2、Backblaze B2、MinIO、又拍云、七牛、阿里云 OSS 与腾讯云 COS 的 S3 兼容接口都属于前者。
- 服务商的文档里要有 S3 兼容 / S3 API / S3-compatible 这类字样,并给出一个 S3 端点:形如
-
第 2 步
建一个私有桶,并准备一对只授权这个桶的密钥
- 在你自己的服务商那里建一个私有桶(不要开公共读写)。
- 再准备一对只授权这个桶的密钥:尽量用服务商的子账号 / API 令牌来建,不要用主账号密钥。
-
第 3 步
在服务商文档里找出三个值
- 找出这三个值:端点、桶名、Access Key ID 与 Secret。
- 不同服务商对这些值的叫法不同(Key ID / Application Key / API Token / SecretId 等),按下面那张表对照着找。
-
第 4 步
回孤云填三个值并测试
- 孤云「添加存储」→ 服务商选「其他 S3」,把三个值填进去。
- 再点「测试连接并保存」。
服务商文档里常见的几种叫法
三个值在不同服务商那里叫什么、去哪里找:
| 孤云里的名字 | 常见叫法 | 去哪找 |
|---|---|---|
| 端点 | S3 Endpoint / API Endpoint / 服务地址 | 服务商文档的「S3 API」章节 |
| 桶名 | Bucket / 存储桶名称 / Container | 服务商控制台的桶列表 |
| 密钥 | Access Key ID + Secret / Key ID + Application Key / API Token | 服务商的「API 密钥 / 访问密钥」页 |
其他情况(用不到可以跳过)
三类最常见的坑,以及「S3 兼容」不承诺什么。
三类最常见的坑
- 端点写成了控制台地址:要填的是 S3 API 端点,不是你在浏览器里打开服务商控制台或网页的地址。
- 端点里带了桶名或路径:孤云的端点只填主机名,桶名与路径单独填一格。
- 桶名写成了简称:有些服务商要求连账号 ID 或 APPID 后缀一起写(形如
your-bucket-name-1234567890),以服务商控制台的桶列表里显示的完整名字为准。
能力差异
- S3 兼容不等于功能齐全:有的服务商没有服务端图片处理,或者不支持缩略图与部分分片上传参数。
- 孤云的浏览与传输不受影响,只是这类桶的缩略图可能显示不出来,要下载后才能看。
权威参考
- Amazon S3 API Reference(「兼容」指的是这套 API) (在新窗口打开)
- (外部参考)虚拟托管式与路径式地址(AWS 官方说明) (在新窗口打开)
抄下这三个值
它们要填进孤云「添加存储」页对应的格子: 端点:其他 S3 没有预置地点 —— 请在 App 的 HTTPS Endpoint 里手填服务商文档给的 S3 端点(例如 https://s3.<区域>.<服务商域名>);桶名与密钥照上表填。
| 抄下这个值 | 填进孤云的哪一格 |
|---|---|
| 桶名 服务商控制台里显示的完整桶名;有的要连账号 ID 或 APPID 后缀一起写,例如 your-bucket-name-1234567890。 | 桶名称 |
| 端点 服务商文档里的 S3 端点,只写主机名,例如 https://s3.<区域>.<服务商域名>,不要带桶名与路径。 | Endpoint |
| 密钥 那对只授权这个桶的密钥:Access Key ID 与 Secret(有的叫 Key ID 与 Application Key)。 | Access Key ID 与 Secret |
怎么知道成了
- 「测试连接并保存」通过,说明这对密钥能读到这个桶;孤云只读根目录,不会改动桶里的东西。
- 连不上时先核对 Endpoint、桶名与密钥,再核对地点;仍报错就到常见错误对照排查。
回到孤云,点「测试连接并保存」。