帮你快速理解、总结文档立即下载

修改域名配置

最近更新时间:2020-03-20 10:10:44
我的收藏

接口描述

UpdateCdnConfig 用于修改加速域名对应的配置信息。
请求域名:cdn.api.qcloud.com
注意:
一次仅支持修改一个域名的配置信息。
支持一次对指定域名的多项配置信息进行一次性修改。
调用频次限制为100次/分钟。
接口已支持子账号调用。
支持配置:
修改源站配置。
修改备站信息。
修改回源 host。
开启/关闭过滤参数。
修改 refer 黑白名单配置。
修改 IP 黑白名单配置。
开启/关闭视频拖拽。
修改缓存过期时间配置。
开启/关闭高级缓存过期配置。
开启/关闭中间源配置。
修改智能压缩配置(此配置尚在内测阶段)。
配置带宽封顶。
设置 response header。
设置 request header。
设置 SEO 优化。
设置302跟随。
设置 range 回源。
设置 IP 访问限频。
状态码缓存时间配置。
时间戳防盗链配置。
单链接下行限速。

入参说明

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,详情请参见 公共请求参数。其中,此接口的 Action 字段为 UpdateCdnConfig。
参数名称
是否必选
类型
描述
hostId
否
Int
要修改配置的域名对应 ID,hostId 与 host 必须填充一个。
host
否
String
要修改配置的域名,hostId 与 host 必须填充一个。
hostType
否
String
修改源站时填充
"cname":自有源站接入。
"cos":cos 源站接入。选择 cos 源接入时,fwdHost 需要与 origin 一致。
origin
否
String
源站设置
"cname"模式:支持配置一个域名,或多个源站 IP。端口可配置区间0 - 65535。
域名模式:www.test.com:8080。
IP 模式:1.1.1.1:8080;2.2.2.2:8080。
"cos"模式:填充 cos 外网域名,cosV4 时,仅支持自有账号下 bucket 设置为源站。
backupOrigin
否
String
备份源站设置,支持配置一个域名,或多个源站 IP。端口可配置区间0 - 65535。
域名模式:www.test.com:8080。
IP 模式:1.1.1.1:8080;2.2.2.2:8080。
fwdHost
否
String
回源 host,CDN 节点回源时所带的 HTTP 头部 host 参数。
fullUrl
否
String
过滤参数配置
"on":表示关闭过滤参数。
"off":表示开启过滤参数。
refer
否
String
防盗链设置,详细说明见下文。
accessIp
否
String
IP 黑白名单配置,重复设置,数据覆盖,以最后一次变更为准,详细说明见下文。
videoSwitch
否
String
视频拖拽配置
"on":表示开启视频拖拽。
"off":表示关闭视频拖拽。
cache
否
String
缓存过期时间配置,详细说明见下文。
cacheMode
否
String
缓存模式设置
"simple":表示缓存完全依赖控制台设置。
"custom":表示缓存依赖控制台设置的缓存时间和源站吐出的 max-age 的最小值。
middleResource
否
String
中间源配置
"on":开启中间源。
"off":关闭中间源。
compression
否
String
智能压缩配置,详细说明见下文。
capping
否
String
带宽封顶设置,详细说明见下文。
rspHeader
否
String
Response Header 设置, 详细说明见下文。
reqHeader
否
String
Request Header 设置,详细说明见下文。
seo
否
String
seo优化设置
"on":开启SEO优化。
"off":关闭SEO优化。
默认 SEO 优化为关闭状态。
follow302
否
String
302跟随设置
"on":开启302跟随。
"off":关闭302跟随。
默认302跟随为关闭状态。
rangeOrigin
否
String
range回源设置
"on":开启range回源。
"off":关闭range回源。
默认 range 回源为开启状态。
ipFrequenceLimit
否
Int
IP 访问限频设置
0:未开启。
大于0的整数:单 IP 单节点 QPS 限制。
statusCodeCache
否
String
状态码缓存时间设置。格式为指定状态码(目前仅开放404)缓存时间。
参数示例: {"404":10}
safetyChain
否
String
时间戳鉴权设置,详细说明见下文。
speedLimit
否
Int
单链接下行速度限制,配置为大于0的正整数,单位为 MB/s。
0:表示取消限速。

详细说明

refer

参数示例
[1,["qq.baidu.com", "*.baidu.com"],1]
第一个字段标识 refer 类型:
0: 不设置防盗链。
1:设置黑名单。
2:设置白名单。
第二个字段为具体的名单列表,第三个字段为是否包含空refer:
1:包含空refer。
0:不包含空refer。

accessIp

参数示例
{"type":1,"list":["1.2.3.4","2.3.4.5"]}
第一个参数 type 为黑白名单类型:
0:取消黑白名单配置
1:黑名单
2:白名单
第二个参数 list 表示对应的黑名单 IP 列表,支持 /8、/16、/24格式的网段设置。
最多可设置100条 IP 黑名单,或者50条 IP 白名单。

cache

参数示例
[[0,"all",1000],[1,".jpg;.js",2000],[2,"/www/html",3000],[3,"/www/1.html",1000],[5,"/",1000]]
第一个参数是缓存类型,有如下几种:
0:全部类型,表示匹配所有文件,默认缓存配置。
1:文件类型,表示按文件后缀匹配。
2:文件夹类型,表示按目录匹配。
3:全路径匹配。
5:设置首页。
第二个参数指定匹配规则:
0:固定填充 “all”。
1:后缀,.jps;.js 等,; 分隔。
2:目录,如 /www/html; /www/anc 等,; 分隔。
3:全路径,如 /www/1.html; /www/2.html 等,; 分隔。
5:首页,即 /。
第三个参数指定缓存时间,单位为秒。 cache 按照规则顺序,从前到后,优先级依次从低到高。

compression

(此配置尚在内测阶段) 参数示例
{"rule":
[{"compress":"on","compress_type":["brotli"],"file_type":".js;.css"},
{"compress":"off","compress_type":["gzip"],"file_type":".xml;.doc"}]}
第一个参数 compress 是压缩状态设置,on 表示压缩,off 表示不压缩。
第二个参数 compress_type 指定压缩格式,支持如下两种:
gzip
brotli
第三个参数 file_type 指定压缩设置匹配的文件格式(后缀),如 .css;.js 等,; 分隔,最长不能超过100个字符。

capping

参数示例
{"bandwidth":1000000, "unit":"K", "overflow":"origin", "active":"yes"}
说明如下:
bandwidth:带宽封顶值,单位为 bps。
uint:控制台展示用的单位,将上述设定值(bps)转为其他单位展示,K 表示 Kbps,M 表示 Mbps,G 表示 Gbps,T 表示 Tbps。
overflow:设置超出阈值后响应,origin 表示全量回源站,404表示所有请求均返回404。
active:yes 表示开启封顶设置, no 表示关闭封顶设置。

rspHeader

参数示例
{"Content-Language":"zh_CN","Access-Control-Allow-Origin":"https://www.test.com"}
目前 Response Header 仅支持以下头部设置:
Content-Disposition
Content-Language
Access-Control-Allow-Origin
Access-Control-Allow-Methods
Access-Control-Max-Age
Access-Control-Expose-Headers
按照 HTTP 协议规范,Access-Control-Allow-Origin 仅能设置为 * ,或者一个域名(需要带http:// 或https:// 头部),value 值不能超过1000个字节。

reqHeader

参数示例
{"cdn":"tencent"}
value 值不能超过1000个字节。

safetyChain

参数示例
{"switch":"on","key":"abcdef","type":1,"time_format":10,"ttl_time":9999}
switch:是否开启鉴权配置,on代表开启,off代表关闭。
key:鉴权密钥,用户自定义设置或随机生成的6 - 32位字符,由大小写字母或数字组成。
time_format:时间戳格式,10代表十进制,16代表十六进制。
ttl_time:过期时间,签名有效时间,单位为秒。
type:时间戳类型,目前暂时提供一种时间戳防盗链类型,需要填充1。
Note:
API 接口仅支持鉴权模式 TypeD 配置,其他鉴权模式 TypeA/B/C 需到 CDN 控制台 进行配置。
更多鉴权配置请参见 鉴权配置。

出参说明

参数名称
类型
描述
code
Int
公共错误码,0表示成功,其他值表示失败。详情请参见错误码页面 公共错误码。
message
String
模块错误信息描述,与接口相关。
codeDesc
String
英文错误信息,或业务侧错误码。详情请参见错误码页面 业务错误码。

调用案例

示例参数

host:www.test.com
reqHeader:{"cdn":"tencent"}

GET 请求

GET 请求需要将所有参数都加在 URL 后:
https://cdn.api.qcloud.com/v2/index.php?
Action=UpdateCdnConfig
&SecretId=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
&Timestamp=1462872270
&Nonce=541116052
&Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
&host=www.test.com
&reqHeader=%7B%22cdn%22%3A%22tencent%22%7D

POST 请求

POST 请求时,参数填充在 HTTP Request-body 中,请求地址:
https://cdn.api.qcloud.com/v2/index.php
参数支持 form-data、x-www-form-urlencoded 等格式,参数数组如下:
array (
'Action' => 'UpdateCdnConfig',
'SecretId' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX',
'Timestamp' => 1462872294,
'Nonce' => 479724541,
'Signature' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX',
'host' => 'www.test.com',
'reqHeader' => '{"cdn":"tencent"}'
)

结果示例

{
"code": 0,
"message": "",
"codeDesc": "Success"
}
{
"code": 4000,
"message": "(9175)部署中状态 cdn host in progress[host in progress]",
"codeDesc": "UserRequestError"
}