本文介绍 OSS 返回 404 错误的原因和解决方案。
KeyNotFound
The specified parameter KMS keyId is not found
-
问题原因:未找到指定的 CMK。
-
解决方案:确认已开通 KMS 服务并填写正确的 CMK ID,CMK ID 示例值为
9468da86-3509-4f8d-a61e-6eab1eac****。详情请参见 服务端加密 。
AliasNotFound
The specified Alias is not found
-
问题原因:未找到指定的 CMK 别名。
-
解决方案:确认已开通 KMS 服务并填写正确的 CMK 别名。CMK 别名必须以 alias 开头,例如
alias/example。
NoSuchServerSideEncryptionRule
The server side encryption configuration was not found
-
问题原因:目标 Bucket 尚未开启服务端加密。
-
解决方案:请为目标 Bucket 开启服务端加密。详情请参见 服务端加密 。
NoSuchWebsiteConfiguration
The specified bucket does not have a website configuration
-
问题原因:目标 Bucket 未配置静态网站托管。
-
解决方案:请为目标 Bucket 配置静态托管。详情请参见 静态网站托管 。
NoSuchBucketObjectTagging
The specified bucket does not have a object tagging
-
问题原因:此 Bucket 中的 Object 均未设置标签。
-
解决方案:请设置对象标签。对象标签使用一组键值对(Key-Value)标记对象,对象标签规则如下:
-
单个 Object 最多可设置 10 个标签,Key 不可重复。
-
每个 Key 长度不超过 128 字符,每个 Value 长度不超过 256 字符。
-
Key 和 Value 区分大小写。
-
标签合法字符集包括大小写字母、数字、空格和以下符号:
+‑=._:/
通过 HTTP Header 的方式设置标签且标签中包含任意字符时,您需要对标签的 Key 和 Value 做 URL 编码。
-
NoSuchCORSConfiguration
The CORS Configuration does not exist
-
问题原因:未配置跨域资源共享 CORS 规则。
-
解决方案:如果您想要允许或者拒绝相应的跨域请求,请为目标 Bucket 配置 CORS 规则。详情请参见 跨域设置 。
NoSuchWORMConfiguration
The WORM Configuration does not exist
-
问题原因:未配置合规保留策略。
-
解决方案:如果您希望以“不可删除、不可篡改”方式保存和使用数据,建议设置合规保留策略。具体操作,请参见 设置合规保留策略 。
The specified WORM ID does not exist
-
问题原因:指定的策略 ID 不存在。
-
解决方案:在锁定合规保留策略或延长保留周期操作中需要指定正确的策略 ID,您可以通过 GetBucketWorm 接口获取策略 ID。
SymlinkTargetNotExist
The symlink target object does not exist
-
问题原因:
-
Object 命名不符合规范。
-
软链接指向的 Object 不存在。
-
-
解决方案:
-
检查并确保 Object 命名符合规范。
Object 命名规范如下:
-
不是以正斜线(/)或者反斜线(\)开头。
-
使用 UTF-8 编码。
-
长度必须在 1~1023 字符之间。
-
-
如果目标 Object 为软链接,则确保软链接指向的 Object 已存在。
-
NoSuchUser
User not found
-
问题原因:该用户不存在。
-
解决方案:请检查阿里云账号是否被注销。
NoSuchRegion
NoSuchRegion
-
问题原因:该 Region 不存在。
-
解决方案:有关 OSS 已开通 Region 的详情,请参见 地域和 Endpoint 。
NoSuchLifecycle
No Row found in Lifecycle Table
-
问题原因:Bucket 未配置生命周期规则(Lifecycle)。
-
解决方案:如果您需要定期将 Object 转储为低频访问、归档存储、冷归档存储、深度冷归档存储类型,或者删除过期的 Object 和碎片,从而节省存储费用,请配置生命周期规则。具体操作,请参见 设置生命周期规则 。
NoSuchInventory
No Row found in Inventory Table
-
问题原因:Bucket 未配置清单规则。
-
解决方案:如果您需要获取存储空间(Bucket)中指定文件(Object)的数量、大小、存储类型、加密状态等信息,请配置清单规则。具体操作,请参见 PutBucketInventory 。
NoSuchBucket
The specified bucket does not exist
-
问题原因:Bucket 命名不符合规范。
-
解决方案:检查并确保 Bucket 命名符合规范。
Bucket 命名规范如下:
-
只包含小写字母、数字和短划线(-)。
-
以小写字母或者数字开头和结尾。
-
长度必须在 3~63 字符之间。
-
NoSuchKey
The specified key does not exist
-
问题原因:
-
Object 命名不符合规范。
-
触发生命周期管理规则,Object 被删除。
-
Object 被其他具有合法权限的用户通过 OSS 控制台、OSS 客户端或 API 等方式删除了。
-
目标 Bucket 与其他 Bucket 存在跨区域复制关系,其他 Bucket 中执行的删除操作被同步到目标 Bucket 中,此时 Object 也会被删除。
-
-
解决方案:
NoSuchUpload
The specified upload does not exist. The upload ID may be invalid, or the upload may have been aborted or completed
-
问题原因:
-
上传成功后未收到 OSS 返回的 requestId,即实际未上传成功。
-
分片上传或者断点续传时,部分分片上传成功,但最终未完成上传。
-
-
解决方案:
-
如果是上传 Object 资源后访问 404,确认上传后收到返回的 requestId。
-
如果是分片上传或断点续传,以调用 CompleteMultipartUpload 接口返回的 HTTP 状态码 200 以及 requestId 为准。详情请参见 InitiateMultipartUpload 。
-
NoSuchVersion
The specified version does not exist
-
问题原因:指定的 Object 版本不存在。
-
解决方案:列举、下载或删除指定版本 Object 时需指定版本 ID,您可以通过 ListObjectVersions(GetBucketVersions) 获取 Object 的所有版本 ID。
NoSuchLiveChannel
The specified live channel does not exist
-
问题原因:指定的 LiveChannel 不存在。
-
解决方案:OSS 推流上传视频时,需要创建一个 LiveChannel,并获取对应的推流地址。详情请参见 RTMP 推流上传 。
NoSuchBucketPolicy
The specified bucket policy does not exist
-
问题原因:请求的 Bucket 没有配置授权策略(Policy)。
-
解决方案:如果您需要授权其他用户访问您的 OSS 资源,建议配置 Bucket Policy。具体操作,请参见 通过 Bucket Policy 授权用户访问指定资源 。
NoSuchReplicationConfiguration
The bucket you specified does not have replication configuration
-
问题原因:此 Bucket 未配置跨区域复制规则。
-
解决方案:如果您需要将源 Bucket 中 Object 的改动(新建、覆盖、删除等操作)自动、异步(近实时)复制到目标 Bucket 中,以实现跨区域容灾或数据复制等需求,建议配置跨区域复制规则。具体操作,请参见 设置跨区域复制 。
NoSuchReplicationRule
The BucketReplicationRule you specified does not exist
-
问题原因:指定的跨区域复制规则不存在。
-
解决方案:获取某个 Bucket 的跨区域复制进度或者或删除 Bucket 的复制配置时需指定复制规则 ID,您可以通过 GetBucketReplication 获取目标 Bucket 的复制规则 ID。
NoSuchTransferAccelerationConfiguration
The bucket you specified does not have transfer acceleration configuration
-
问题原因:指定的 Bucket 未开启传输加速。
-
解决方案:如果您需要远距离数据传输加速、加速上传和下载 GB 或 TB 级大文件以及非静态、非热点数据下载加速等场景,请开启传输加速服务。详情请参见 通过传输加速访问 OSS 。
NoSuchChannel
No Such Image Channel
-
问题原因:该图片频道不存在。
-
解决方案:图片频道是老版图片服务手册中的概念,老版图片功能不再更新。推荐使用新版图片处理指南,详情请参见 图片处理 。
NoSuchStyle
No Such Image Style
-
问题原因:该图片样式不存在。
-
解决方案:如果您需要在一个样式(Style)中包含多个图片处理参数,建议您创建样式,以便快速实现复杂的图片处理操作。详情请参见 图片样式 。
NoSuchCacheControlConfiguration
The bucket you specified does not have cache control configuration
-
问题原因:该 Bucket 未配置缓存控制策略。
-
解决方案:如果您需要实现不同的缓存控制策略,请在 HTTP 请求和响应中使用
cache-control通用消息头。OSS 支持在 PutObject 、 AppendObject 、 GetObject 等 API 接口中指定cache-control。