本文介绍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的详情,请参见访问域名和数据中心。
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级大文件以及非静态、非热点数据下载加速等场景,请开启传输加速服务。详情请参见传输加速。
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
。