上传配置与公开路径
上传配置将存储、文件路径和处理步骤组合成一个上传入口。上传者选择配置即可,不需要每次选择存储桶或水印规则。
例如,“博客图片”使用 /blog/ 前缀并添加水印,“截图”使用 /screenshots/ 前缀且不做上传处理;两者可以共用同一个存储组。
创建上传配置
先准备好 存储组,再打开 配置 → 上传配置,点击创建。
| 配置项 | 示例与作用 |
|---|---|
| 名称 | 博客图片,显示在上传页的选择列表中 |
| 公开前缀 | /blog/,作为公开图片路径的开头;不要使用 /api/、/app/ 等系统路径 |
| 路径插件 | 默认选择“随机路径”,生成 32 位随机文件名;分片目录层数保留 2 |
| 存储组 | 选择已建立的存储组,决定副本数和存储位置 |
| 允许格式、文件大小 | 限制这个入口接收的图片;其他全局及用户限制仍然生效 |
| 上传流水线 | 可选,保存前进行缩放、水印等处理 |
| 保存后流水线 | 可选,保存后在后台审核或发送通知 |
| 允许游客上传 | 需要匿名上传时才开启,还需配置游客额度 |
保存后回到上传页,确认该配置可以选择,并上传一张图片。若不可用,查看配置提示,检查路径插件是否就绪、存储组是否有足够的可用成员。
设置默认上传配置
默认配置用于未显式指定 profileId 的上传请求:
| 范围 | 设置入口 | 行为 |
|---|---|---|
| 站点默认 | 管理员在 配置 → 上传配置 点击“设为站点默认”;再次点击可取消 | 游客及未设置个人默认项的用户使用 |
| 个人默认 | 登录后在 上传令牌 页选择“默认上传配置”并保存 | 该用户及其上传令牌优先使用;选择“跟随站点”则使用站点默认 |
默认项不扩大用户、游客或令牌的权限。默认项被禁用、删除、超出令牌范围或当前不可用时,上传会报错,不会另选其他配置;未设置任何默认项时需显式选择配置。存储失败或文件超限也不会触发配置切换。
网页上传会优先使用当前浏览器记住的选择;默认配置不保证覆盖这个选择。脚本可显式传入配置 ID 以固定规则,接口见默认上传配置。
链接如何形成
公开链接由图片域名、公开前缀和路径插件生成的路径组成。例如:
| 项目 | 示例 |
|---|---|
| 图片域名 | https://img.example.com |
| 公开前缀 | /blog/ |
| 随机路径 | 9b7c6d5e4f304162a8b9c0d1e2f34567.jpg |
| 公开链接 | https://img.example.com/blog/9b7c6d5e4f304162a8b9c0d1e2f34567.jpg |
| 存储路径 | 9b/7c/9b7c6d5e4f304162a8b9c0d1e2f34567.jpg(默认两层目录,相对于存储源根目录或对象前缀) |
随机文件名由上传 ID 生成,不包含日期或原始文件名。实际使用时直接复制上传结果,不需要手工拼接。域名设置见 域名与反向代理。
随机路径的分片目录层数可选 0、1、2,只影响存储位置。S3 的对象前缀同样只影响桶内位置,不会加入公开链接。
公开前缀可以相同或嵌套,但最终公开路径必须唯一。例如 /i/ 下的 photos/a.jpg 与 /i/photos/ 下的 a.jpg 对应同一条链接,不能分别保存为两张图片;上传遇到重名会失败,不覆盖已有图片。
修改后对已有图片的影响
- 修改路径、前缀或存储组,用于后续上传;已有文件的路径与副本不会自动改变。
- 修改上传处理规则,不会重新处理已经保存的图片。
- 关闭上传配置,停止接收该入口的新上传,已有图片不会被删除。
全局访问流水线在访问图片时运行,因此调整它也会影响已有图片的访问处理。详见 流水线。