調用PutCname接口為某個存儲空間(Bucket)綁定自定義域名。
請求語法
POST /?cname&comp=add HTTP/1.1
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Content-Type: application/xml
Content-Length: 186
Date: GMT Date
Authorization: SignatureValue
<BucketCnameConfiguration>
<Cname>
<Domain>example.com</Domain>
</Cname>
</BucketCnameConfiguration>
請求頭
此接口僅包含公共請求頭。更多信息,請參見公共請求頭(Common Request Headers)。
請求元素
名稱 | 類型 | 是否必選 | 示例值 | 描述 |
BucketCnameConfiguration | 容器 | 是 | 不涉及 | Cname配置的容器。 父節點:無 子節點:Cname |
Cname | 容器 | 是 | 不涉及 | Cname信息的容器。 父節點:BucketCnameConfiguration 子節點:Domain |
Domain | 字符串 | 是 | example.com | 自定義域名。 父節點:Cname 子節點:無 |
CertificateConfiguration | 容器 | 是 | 不涉及 | 證書配置的容器。 父節點:Cname 子節點:CertId、Certificate、PrivateKey、PreviousCertId、Force和DeleteCertificate |
CertId | 字符串 | 是 | 493****-cn-hangzhou | 證書ID。 父節點:CertificateConfiguration 子節點:無 |
Certificate | 字符串 | 是 | -----BEGIN CERTIFICATE----- MIIDhDCCAmwCCQCFs8ixARsyrDANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMC **** -----END CERTIFICATE----- | 證書公鑰。 父節點:CertificateConfiguration 子節點:無 |
PrivateKey | 字符串 | 是 | -----BEGIN CERTIFICATE----- MIIDhDCCAmwCCQCFs8ixARsyrDANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMC **** -----END CERTIFICATE----- | 證書私鑰。 父節點:CertificateConfiguration 子節點:無 |
PreviousCertId | 字符串 | 否 | 493****-cn-hangzhou | 當前證書ID。如果Force值不為true,OSS Server會檢查該值與當前證書ID是否匹配,不匹配則報錯。 重要 綁定證書時,如果不填寫PreviousCertId,需將Force置為true。 父節點:CertificateConfiguration 子節點:無 |
Force | 字符串 | 是 | true | 是否強制覆蓋證書。取值如下:
父節點:CertificateConfiguration 子節點:無 |
DeleteCertificate | 字符串 | 是 | true | 是否刪除證書。取值如下:
父節點:CertificateConfiguration 子節點:無 |
響應頭
此接口僅涉及公共響應頭。更多信息,請參見公共響應頭(Common Response Headers)。
示例
請求示例
綁定域名
POST /?cname&comp=add HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Content-Type: application/xml Content-Length: 186 Date: Thu, 24 Sep 2015 15:39:12 GMT Authorization: OSS qn6q**************:77Dv**************** <BucketCnameConfiguration> <Cname> <Domain>example.com</Domain> </Cname> </BucketCnameConfiguration>
綁定證書
POST /?cname&comp=add HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Content-Type: application/xml Content-Length: 186 Date: Thu, 24 Sep 2015 15:39:12 GMT Authorization: OSS qn6q**************:77Dv**************** <BucketCnameConfiguration> <Cname> <Domain>example.com</Domain> <CertificateConfiguration> <CertId>493****-cn-hangzhou</CertId> <Certificate>-----BEGIN CERTIFICATE----- MIIDhDCCAmwCCQCFs8ixARsyrDANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMC **** -----END CERTIFICATE-----</Certificate> <PrivateKey>-----BEGIN CERTIFICATE----- MIIDhDCCAmwCCQCFs8ixARsyrDANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMC **** -----END CERTIFICATE-----</PrivateKey> <PreviousCertId>493****-cn-hangzhou</PreviousCertId> <Force>true</Force> </CertificateConfiguration> </Cname> </BucketCnameConfiguration>
解綁證書
如果您不希望該域名繼續使用該證書,可以執行解綁證書的操作。
POST /?cname&comp=add HTTP/1.1 Host: oss-example.oss-cn-hangzhou.aliyuncs.com Content-Type: application/xml Content-Length: 186 Date: Thu, 24 Sep 2015 15:39:12 GMT Authorization: OSS qn6q**************:77Dv**************** <BucketCnameConfiguration> <Cname> <Domain>example.com</Domain> <CertificateConfiguration> <DeleteCertificate>True</DeleteCertificate> </CertificateConfiguration> </Cname> </BucketCnameConfiguration>
返回示例
content-length: 0 x-oss-console-auth: success server: AliyunOSS x-oss-server-time: 980 connection: keep-alive x-oss-request-id: 5C1B138A109F4E405B2D date: Wed, 15 Sep 2021 03:33:37 GMT
錯誤碼
錯誤碼 | HTTP狀態碼 | 描述 |
InvalidArgument | 400 | Cname格式錯誤,您可以在返回XML中查看具體錯誤字段和原因。 |
NeedVerifyDomainOwnership | 403 | 未驗證域名所有權。 驗證域名所有權的步驟說明如下:
|
CnameDenied | 403 | 域名已被占用。 |
CnameIsForbidden | 403 | 該域名為OSS內部保留域名,無法綁定。 |
CnameIsRisk | 403 | 該域名為存在較高風險,無法綁定。 |
NoSuchCnameInRecord | 404 | 域名未備案。關于備案域名的具體步驟,請參見什么是阿里云域名服務。 |
CnameAlreadyExists | 409 | 返回此錯誤的可能原因如下:
針對以上問題,您需要解除域名綁定。具體步驟,請參見解除域名綁定。 |