问题描述
指定的Bucket名称不符合规范。
问题原因
Bucket名称不符合规范。Bucket命名规范为:
只能包括小写英文字母、数字和短划线(-)。
必须以小写英文字母或者数字开头和结尾。
长度必须在3~63个字符之间。
您使用SDK发起请求时,Endpoint参数中包含了Bucket。
问题示例
例如以下调用PutBucket接口示例中,指定的Bucket名称为大写的ABC,不符合Bucket的命名规范。
PUT / HTTP/1.1 Host: ABC.oss-cn-hangzhou.aliyuncs.com Date: Fri, 24 Feb 2017 03:15:40 GMT x-oss-acl: private Authorization: OSS qn6q**************:77Dv**************** <?xml version="1.0" encoding="UTF-8"?> <CreateBucketConfiguration> <StorageClass>Standard</StorageClass> <DataRedundancyType>LRS</DataRedundancyType> </CreateBucketConfiguration>
例如SDK中指定了您的Bucket为杭州地域的your-bucket。
$endpoint = "https://your-bucket.oss-cn-hangzhou.aliyuncs.com"; $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
解决方案
请按照Bucket命名规范指定正确的Bucket名称。
Endpoint参数中不指定Bucket。
$endpoint = "https://oss-cn-hangzhou.aliyuncs.com"; $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
相关文档
文档内容是否对您有帮助?