跳到主要内容
孤云

其他 S3

任何提供 S3 兼容 API 的服务都能接孤云 —— 端点与密钥由你的服务商提供,差别只在细节。

要准备三样:端点 / 桶名 / 密钥(地域由应用自动处理);端点推不出来,得从服务商文档里抄。

分步操作

  1. 第 1 步

    确认它真的是 S3 兼容

    • 服务商的文档里要有 S3 兼容 / S3 API / S3-compatible 这类字样,并给出一个 S3 端点:形如 https://s3.<区域>.<服务商域名>,或者像 https://<账号>.r2.cloudflarestorage.com 这种带账号的地址。
    • 只有网页上传界面、没有 S3 端点的服务接不上孤云。例如 Cloudflare R2、Backblaze B2、MinIO、又拍云、七牛、阿里云 OSS 与腾讯云 COS 的 S3 兼容接口都属于前者。
  2. 第 2 步

    建一个私有桶,并准备一对只授权这个桶的密钥

    • 在你自己的服务商那里建一个私有桶(不要开公共读写)。
    • 再准备一对只授权这个桶的密钥:尽量用服务商的子账号 / API 令牌来建,不要用主账号密钥。
  3. 第 3 步

    在服务商文档里找出三个值

    • 找出这三个值:端点、桶名、Access Key ID 与 Secret。
    • 不同服务商对这些值的叫法不同(Key ID / Application Key / API Token / SecretId 等),按下面那张表对照着找。
  4. 第 4 步

    回孤云填三个值并测试

    • 孤云「添加存储」→ 服务商选「其他 S3」,把三个值填进去。
    • 再点「测试连接并保存」。

服务商文档里常见的几种叫法

三个值在不同服务商那里叫什么、去哪里找:

孤云里的名字常见叫法去哪找
端点S3 Endpoint / API Endpoint / 服务地址服务商文档的「S3 API」章节
桶名Bucket / 存储桶名称 / Container服务商控制台的桶列表
密钥Access Key ID + Secret / Key ID + Application Key / API Token服务商的「API 密钥 / 访问密钥」页
其他情况(用不到可以跳过)

三类最常见的坑,以及「S3 兼容」不承诺什么。

三类最常见的坑

  1. 端点写成了控制台地址:要填的是 S3 API 端点,不是你在浏览器里打开服务商控制台或网页的地址。
  2. 端点里带了桶名或路径:孤云的端点只填主机名,桶名与路径单独填一格。
  3. 桶名写成了简称:有些服务商要求连账号 ID 或 APPID 后缀一起写(形如 your-bucket-name-1234567890),以服务商控制台的桶列表里显示的完整名字为准。

能力差异

  • S3 兼容不等于功能齐全:有的服务商没有服务端图片处理,或者不支持缩略图与部分分片上传参数。
  • 孤云的浏览与传输不受影响,只是这类桶的缩略图可能显示不出来,要下载后才能看。

抄下这三个值

它们要填进孤云「添加存储」页对应的格子: 端点:其他 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、桶名与密钥,再核对地点;仍报错就到常见错误对照排查。

回到孤云,点「测试连接并保存」。