1. 接口描述
本接口(UpdateCdnOverseaConfig)用于更新某个境外域名的 CDN 服务配置。
接口请求域名:
cdn.api.qcloud.com
2. 输入参数
参数名称 | 是否必选 | 类型 | 描述 |
hostId | 是 | Int | 境外 CDN 域名 ID。 |
projectId | 否 | Int | 域名所属的项目 ID。 |
serviceType | 否 | String | 域名业务类型,共有三种类型:<li>web:表示类型为静态加速。</li><li>download:表示业务类型为下载加速。</li><li>media:表示业务类型为流媒体加速。</li> |
origin | 否 | String | 域名对应源站配置。 |
backupOrigin | 否 | String | 备份源站设置,支持配置一个域名,或多个源站 IP。端口可配置区间0 - 65535。<li>域名模式: www.test.com:8080 。</li><li>IP 模式:1.1.1.1:8080;2.2.2.2:8080。</li> |
fwdHost | 否 | String | 回源地址。 |
refer | 否 | String | |
accessIp | 否 | String | |
ipFreqLimit | 否 | String | |
follow302 | 否 | String | 'on' 或是 'off',表示是否开启了回源跟随301/302。 |
cache | 否 | String | |
furlCache | 否 | String | 过滤参数<li>on:表示不使用过滤参数功能,启用全路径缓存命中规则。</li><li>off:表示使用过滤参数功能,不启用全路径缓存命中规则。</li> |
rspHeader | 否 | String | 自定义返回头部。 |
middle | 否 | String | 'on' 或是 'off',表示是否开启了中间源。 |
https | 否 | String |
refer 设置
refer 字段设置访问的黑名单或白名单,示例如下:
{"type":2,"list":["*.qq.com","www.test.com"]}
type 为 refer 名单类型:0表示不设置,1表示黑名单,2表示白名单。
list 为具体的名单列表。
accessIp 设置
accessIp 字段客户源IP的黑名单或白名单,示例如下:
{"type": 1, "iplist": ["1.1.1.1", "2.2.2.2/8"]}
type 为 IP 名单类型:0表示不设置,1表示黑名单,2表示白名单。
iplist 为具体的名单列表,支持 /8、/16、/24格式的网段设置。
最多可设置100条 IP 黑名单,或者50条 IP 白名单。
ipFreqLimit 设置
ipFreqLimit 字段设置单 IP 单节点 QPS 限制,示例如下:
{"type": 0}{"type": 1, "count": 10, "period": 1}
type 为 IP 访问限频配置状态:0表示关闭 IP 访问限频,1表示开启 IP 访问限频。
count 为单 IP 单节点 QPS 阈值,最大可设置为100000。
period 为限频周期,当前固定只可设置为1。
cache 设置
cache 字段设置资源的缓存策略,示例如下:
[{"type":1, "rule":".jpg;.png", "time" : 1, "unit":"s"}]
type 为缓存类型,有如下四种:
0:表示匹配所有文件,默认缓存配置。
1:表示匹配文件类型,按文件后缀匹配。
2:表示匹配文件夹类型,按目录匹配。
3:表示全路径匹配。
rule 为匹配规则,对应不同的缓存类型分别有四种:
0:固定填充 "all",表示所有文件。
1:后缀,.jps;.js 等,用;分隔。
2:目录,如 /www/anc;/a/b 等,用;分隔。
3:全路径,如 /a/1.html;/b/2.html,用;分隔。
time 为缓存时间。
unit 为缓存时间的单位,有如下四种:
d:单位为天。
h:单位为小时。
m:单位为分钟。
s:单位为秒。
HTTPS 设置
https 字段设置开启或关闭境外 HTTPS 配置,示例如下:
https:{"type":1,"cert_id":"83pwaqvc","http2":-1}
type 为 HTTPS 配置状态:0表示关闭 HTTPS,1:HTTPS 访问,HTTP 回源, 2: HTTPS 访问,HTTPS 回源。
cert_id:通过调用接口:CertUpload,上传证书到腾讯云 SSL 托管获得证书 cert_id,或通过调用接口 GetHostCertList,查询腾讯云 SSL 托管 HTTPS 证书 cert_id。
http2:1表示开启 HTTP2 功能, -1表示关闭 HTTP2。
3. 输出参数
参数名称 | 类型 | 描述 |
code | Int | |
message | String | 模块错误信息描述,与接口相关。 |
codeDesc | String | 英文错误信息,或业务侧错误码。 |
data | Array | 结果数据,详细说明见下文 data 字段说明。 |
data 字段说明
参数名称 | 类型 | 描述 |
app_id | Int | |
host_id | Int | 境外域名 ID。 |
project_id | Int | 域名所属的项目 ID。 |
host | String | 域名。 |
cname | String | CDN 分配 .cdn.dnsv1.com 后缀加速域名。 |
host_type | String | 接入方式,共有三种类型:<li>cos:表示域名接入时使用的托管源为 COS 源。</li><li>cname:表示域名接入时使用的是自有源站。</li><li>ftp:表示该域名接入时使用了 CDN 提供的 FTP 托管源。</li> |
service_type | String | 域名业务类型,共有三种类型:<li>web:表示类型为静态加速。</li><li>download:表示业务类型为下载加速。</li><li>media:表示业务类型为流媒体加速。</li> |
status | Int | 域名 CDN 服务状态码。 |
cdn_status | String | 域名 CDN 服务状态。 |
origin | String | 域名对应源站配置。 |
fwd_host | String | 回源地址。 |
refer | String | |
cache | String | |
furl_cache | String | 过滤参数:<li>on:表示开启。</li><li>off:表示关闭。</li> |
rsp_header | String | 自定义返回头部 |
https | Array | |
readonly | Int | 当前是否被锁定,0表示未被锁定,1表示被锁定。 |
deleted | String | 'yes' 或是 'no',表示域名是否标记为已删除。 |
message | String | 域名状态的描述信息。 |
create_time | String | CDN 服务创建时间。 |
update_time | String | CDN 服务的最近更新时间。 |
middle_resource | String | 'on' 或是 'off',表示是否开启了中间源。 |
cache 字段说明
参数名称 | 类型 | 描述 |
type | Int | 类型,共有两种类型,其中0表示配置为所有文件,1表示配置为文件类型。 |
rule | String | 匹配规则,与上述 type 相对应。 |
time | Int | 缓存时间,单位:秒。 |
unit | String | 设置缓存时间时所用单位,共有四种类型,'d' 表示天,'h' 表示小时,'m' 表示分钟,'s' 表示秒。 |
refer 字段说明
参数名称 | 类型 | 描述 |
type | Int | 防盗链类型,共有三种类型,0表示未配置防盗链,1表示配置的名单为黑名单,2表示配置的名单为白名单。 |
list | Array | 配置的防盗链名单。 |
HTTPS 字段说明
参数名称 | 类型 | 描述 |
host_id | Int | 境外域名 ID。 |
cert_id | String | 配置域名关联证书的证书 ID。 |
common_name | String | 证书关联域名信息。 |
source | Int | 有两个状态,0表示证书用户自行管理,1表示证书托管在腾讯云 SSL 上。 |
status | String | 有4个状态:<li>progress 表示配置中。</li><li>success 表示配置成功。</li><li>fail 表示配置失败。</li><li>delete 表示配置已关闭。</li> |
hy | String | 两种回源请求协议,http 表示回源走 HTTP 协议,https 表示回源走 HTTPS 协议。 |
http2 | Int | 1表示开启 HTTP2 功能, -1表示关闭 HTTP2。 |
message | String | 备注信息。 |
expire_time | String | 证书有效期。 |
update_time | String | HTTPS 配置更新时间。 |
Note:
未在上述文档中说明的字段为无效字段,可直接忽略。
4. 示例
4.1 输入示例
hostId:11111111middle:offhttps:{"type":1,"cert_id":"8XXXXXXX","http2":-1}
4.2 GET 请求
GET 请求需要将所有参数都加在 URL 后:
https://cdn.api.qcloud.com/v2/index.php?Action=UpdateCdnOverseaConfig&SecretId=XXXXXXXXXXXXXXXXXXXXXXXXXXX&Timestamp=1462434006&Nonce=123456789&Signature=XXXXXXXXXXXXXXXXXXXXX&hostId=11111111&middle=off&https={"type":1,"cert_id":"8XXXXXXX","http2":-1}
4.3 POST 请求
POST 请求时,参数填充在 HTTP Request-body 中,请求地址:
https://cdn.api.qcloud.com/v2/index.php
参数支持 form-data、x-www-form-urlencoded 等格式,参数数组如下:
array ('Action' => 'UpdateCdnOverseaConfig','SecretId' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX','Timestamp' => 1462782282,'Nonce' => 123456789,'Signature' => 'XXXXXXXXXXXXXXXXXXXXXXXX','hostId' => '11111111','middle' => 'off',)
4.4 返回结果示例
{"code": 0,"message": "","codeDesc": "Success","data": [{"host_id": 11111111,"app_id": 12345678,"project_id": 0,"host": "www.test.com","cname": "www.test.com.cdn.dnsv1.com","host_type": "cname","service_type": "download","status": 4,"cdn_status": "offline","origin": "8.8.8.8","fwd_host": "www.test.com","refer": {"type": 2,"list": ["1.1.1.1"]},"cache": [{"type": 0,"rule": "all","time": 2592000,"unit": "d"},{"type": "1","rule": ".jpg;.png;.css;.js","time": 86400,"unit": "d"}],"furl_cache": "off","rsp_header": [],"https": {"type": 0},"readonly": 0,"deleted": "no","message": "部署中","create_time": "2017-08-08 11:27:59","update_time": "2017-08-08 12:19:11","middle_resource": "off"}],"https": {"host_id": 11111111,"cert_id": "8XXXXXXX","common_name": "www.test.com","source": 0,"status": "success","hy": "http","http2": -1,"message": "www.test.com","expire_time": "2018-01-18 07:59:59","update_time": "2017-11-15 17:10:43","type": 1}}