第13章 阿里云 OSS
Alibaba Cloud OSS 使用阿里云 OSS 桶存储文件。
Configuration 区域代码 创建 OSS 存储策略时,需指定桶所属的地域代码。可在 OSS 地域和端点 页面的表格中查看对应地域及其 Region ID(例如 cn-hangzhou)。注意:请勿包含 oss- 前缀。 也可从 OSS 桶的端点推断区域代码。例如,端点 oss-cn-beijing.aliyuncs.com 对应区域代码 cn-beijing。
CORS 策略 桶需配置 CORS 策略,才能配合 Cloudreve Web 客户端上传或浏览文件。通常,添加存储策略时,Cloudreve 可自动配置 CORS 策略。如需手动配置,请在内容安全 -> CORS 中添加。
内网端点 若 Cloudreve 部署在阿里云 ECS 上,且与 OSS 位于同一可用区,可额外指定内网端点以节省网络流量费用。当满足条件时,Cloudreve 将自动切换至内网端点。 为存储策略配置内网端点后,以下场景将切换至内网端点: 服务端传输上传; 服务端中继上传(需存储策略启用“上传中继”); 文件管理请求(删除、创建上传会话等); 服务端中继下载(需存储策略启用“下载中继”); 其他需服务端下载文件的请求; 使用从节点处理任务时,仍使用公网端点。
自定义域名端点 若仅希望在文件下载 URL 中使用自定义域名(如 CDN),可在存储策略中配置“下载 CDN”。配置后,文件下载 URL 的主机名和路径将替换为提供的 CDN 地址,但文件上传和管理请求仍使用 OSS 官方端点。本节说明如何为所有请求配置自定义端点。
准备自定义域名 请通过 CNAME 记录或反向代理,将自定义域名指向带桶名前缀的桶域名。在 OSS 桶配置的桶设置 -> 域名 中添加并验证该域名。 若不愿在 OSS 桶配置中添加自定义域名,仍可继续,但域名必须反向代理至桶域名,直接 CNAME 解析不可行。配置反向代理时,需将请求的 Host 头重写为带桶名的官方桶域名,否则 OSS 无法识别桶。参考配置方法: nginx location / { proxy_pass https://
启用自定义端点 在存储策略配置的基本信息 -> 端点 中填入自定义域名,并勾选“这是自定义域名”选项。
常见问题 上传错误:无法完成文件上传:禁止回调私有地址。(InvalidArgument) 请检查设置 -> 基本 中的“主站点 URL”是否正确。必须是公网可访问的地址。 上传错误:无法完成文件上传:xxxxx(CallbackFailed) 此错误表示 OSS 无法访问回调 URL。请检查设置 -> 基本 中的“主站点 URL”是否正确。必须是公网可访问的地址。 错误信息中的 xxxx 是请求回调地址时的具体错误,请据此排查。 上传错误:无法创建上传会话:xxxxx 尝试访问的桶必须使用指定的端点。请将后续所有请求发送至该端点 检查存储策略中的端点设置,使用官方端点时避免勾选“这是自定义域名”选项; 若使用自定义端点: 确保其指向带桶名的桶域名,而非官方端点; 确保已在 OSS 桶配置中添加并验证该自定义域名;或在反向代理配置中正确重写 Host 头; 中继上传失败,错误:无法解析响应 展开详细错误,检查错误信息是否包含 413 Request Entity Too Large。 若有,请修改 Nginx 反向代理配置,设置或增大 client_max_body_size 值,例如 client_max_body_size 20000m;。该值应大于上传文件大小。 检查外部 WAF 防火墙是否拦截了上传请求。 上传错误:请求失败:AxiosError: Network Error xxx 检查存储策略中的端点设置是否正确: 用户侧是否可访问该端点; 若站点使用 HTTPS,确保填写的端点也为 HTTPS,且已配置有效的 SSL 证书; 检查桶 CORS 策略是否已设置且正确; 图片可正常查看和下载,但使用 Photopea 打开时始终处于加载状态 检查存储桶的 referer 策略,允许 Refer 为 https://photopea.com 的请求。