1. 接口描述
本接口(UpdateCdnOverseaConfig)用于更新某个境外域名的 CDN 服务配置。
接口请求域名:cdn.api.qcloud.com
2. 输入参数
以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,详情请参见 公共请求参数 。
其中,此接口的 Action 字段为 UpdateCdnOverseaConfig。
参数名称 | 是否必选 | 类型 | 描述 |
---|---|---|---|
hostId | 是 | Int | 境外 CDN 域名 ID。 |
projectId | 否 | Int | 域名所属的项目 ID。 |
serviceType | 否 | String | 域名业务类型,共有三种类型: |
origin | 否 | String | 域名对应源站配置。 |
backupOrigin | 否 | String | 备份源站设置,支持配置一个域名,或多个源站 IP。端口可配置区间0 - 65535。www.test.com:8080 。 |
fwdHost | 否 | String | 回源地址。 |
refer | 否 | String | 防盗链设置,详细说明见下文 refer 设置 。 |
accessIp | 否 | String | IP 黑/白名单设置,详细说明见下文 accessIp 设置。 |
ipFreqLimit | 否 | String | IP 访问限频设置,详细说明见下文 ipFreqLimit 设置。 |
follow302 | 否 | String | 'on' 或是 'off',表示是否开启了回源跟随301/302。 |
cache | 否 | String | 缓存规则设置,详细说明见下文 cache 设置。 |
furlCache | 否 | String | 过滤参数 |
rspHeader | 否 | String | 自定义返回头部。 |
middle | 否 | String | 'on' 或是 'off',表示是否开启了中间源。 |
https | 否 | String | HTTPS 配置,HTTP2.0 配置,详细说明见下文 HTTPS 设置。 |
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 | 公共错误码,0表示成功,其他值表示失败。详情请参见 公共错误码。 |
message | String | 模块错误信息描述,与接口相关。 |
codeDesc | String | 英文错误信息,或业务侧错误码。 |
data | Array | 结果数据,详细说明见下文 data 字段说明。 |
data 字段说明
参数名称 | 类型 | 描述 |
---|---|---|
app_id | Int | 腾讯云 服务账号,与 UIN 对应。 |
host_id | Int | 境外域名 ID。 |
project_id | Int | 域名所属的项目 ID。 |
host | String | 域名。 |
cname | String | CDN 分配.cdn.dnsv1.com 后缀加速域名。 |
host_type | String | 接入方式,共有三种类型: |
service_type | String | 域名业务类型,共有三种类型: |
status | Int | 域名 CDN 服务状态码。 |
cdn_status | String | 域名 CDN 服务状态。 |
origin | String | 域名对应源站配置。 |
fwd_host | String | 回源地址。 |
refer | String | 防盗链设置,详细说明见下文 refer 字段说明。 |
cache | String | 缓存规则设置,详细说明见下文 cache 字段说明。 |
furl_cache | String | 过滤参数: |
rsp_header | String | 自定义返回头部 |
https | Array | HTTPS 配置,HTTP2.0 配置,详细说明见下文 HTTPS 字段说明。 |
readonly | Int | 当前是否被锁定,0表示未被锁定,1表示被锁定。 |
deleted | String | 'yes' 或是 'no',表示域名是否标记为已删除。 |
message | String | 域名状态的描述信息。 |
create_time | String | CDN 服务创建时间。 |
update_time | String | CDN 服务的最近更新时间。 |
middle_resource | String | 'on' 或是 'off',表示是否开启了中间源。 |
参数名称 | 类型 | 描述 |
---|---|---|
type | Int | 类型,共有两种类型,其中0表示配置为所有文件,1表示配置为文件类型。 |
rule | String | 匹配规则,与上述 type 相对应。 |
time | Int | 缓存时间,单位:秒。 |
unit | String | 设置缓存时间时所用单位,共有四种类型,'d' 表示天,'h' 表示小时,'m' 表示分钟,'s' 表示秒。 |
参数名称 | 类型 | 描述 |
---|---|---|
type | Int | 防盗链类型,共有三种类型,0表示未配置防盗链,1表示配置的名单为黑名单,2表示配置的名单为白名单。 |
list | Array | 配置的防盗链名单。 |
参数名称 | 类型 | 描述 |
---|---|---|
host_id | Int | 境外域名 ID。 |
cert_id | String | 配置域名关联证书的证书 ID。 |
common_name | String | 证书关联域名信息。 |
source | Int | 有两个状态,0表示证书用户自行管理,1表示证书托管在腾讯云 SSL 上。 |
status | String | 有4个状态: |
hy | String | 两种回源请求协议,http 表示回源走 HTTP 协议,https 表示回源走 HTTPS 协议。 |
http2 | Int | 1表示开启 HTTP2 功能, -1表示关闭 HTTP2。 |
message | String | 备注信息。 |
expire_time | String | 证书有效期。 |
update_time | String | HTTPS 配置更新时间。 |
注意:未在上述文档中说明的字段为无效字段,可直接忽略。
4. 示例
4.1 输入示例
hostId:11111111
middle:off
https:{"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
}
}