修改域名配置

最近更新时间:2020-03-20 10:10:44

我的收藏

接口描述

UpdateCdnConfig 用于修改加速域名对应的配置信息。
请求域名:cdn.api.qcloud.com
Note:

一次仅支持修改一个域名的配置信息。
支持一次对指定域名的多项配置信息进行一次性修改。
调用频次限制为100次/分钟。
接口已支持子账号调用,权限配置请参见 权限配置示例
一次仅支持修改一个域名的配置信息。
支持一次对指定域名的多项配置信息进行一次性修改。
调用频次限制为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
修改源站时填充<li>"cname":自有源站接入。</li><li>"cos":cos 源站接入。选择 cos 源接入时,fwdHost 需要与 origin 一致。</li>
origin
String
源站设置<li>"cname"模式:支持配置一个域名,或多个源站 IP。端口可配置区间0 - 65535。</li><li>域名模式:www.test.com:8080</li><li>IP 模式:1.1.1.1:8080;2.2.2.2:8080。</li><li>"cos"模式:填充 cos 外网域名,cosV4 时,仅支持自有账号下 bucket 设置为源站。</li>
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
回源 host,CDN 节点回源时所带的 HTTP 头部 host 参数。
fullUrl
String
过滤参数配置<li>"on":表示关闭过滤参数。</li><li>"off":表示开启过滤参数。
refer
String
防盗链设置,详细说明见下文。
accessIp
String
IP 黑白名单配置,重复设置,数据覆盖,以最后一次变更为准,详细说明见下文。
videoSwitch
String
视频拖拽配置<li>"on":表示开启视频拖拽。</li><li>"off":表示关闭视频拖拽。</li>
cache
String
缓存过期时间配置,详细说明见下文。
cacheMode
String
缓存模式设置<li>"simple":表示缓存完全依赖控制台设置。</li><li>"custom":表示缓存依赖控制台设置的缓存时间和源站吐出的 max-age 的最小值。</li>
middleResource
String
中间源配置<li>"on":开启中间源。</li><li> "off":关闭中间源。</li>
compression
String
智能压缩配置,详细说明见下文。
capping
String
带宽封顶设置,详细说明见下文。
rspHeader
String
Response Header 设置, 详细说明见下文。
reqHeader
String
Request Header 设置,详细说明见下文。
seo
String
seo优化设置<li>"on":开启SEO优化。</li><li>"off":关闭SEO优化。</li>默认 SEO 优化为关闭状态。
follow302
String
302跟随设置<li>"on":开启302跟随。</li><li>"off":关闭302跟随。</li>默认302跟随为关闭状态。
rangeOrigin
String
range回源设置<li>"on":开启range回源。</li><li>"off":关闭range回源。</li>默认 range 回源为开启状态。
ipFrequenceLimit
Int
IP 访问限频设置<li>0:未开启。</li><li>大于0的整数:单 IP 单节点 QPS 限制。</li>
statusCodeCache
String
状态码缓存时间设置。格式为指定状态码(目前仅开放404)缓存时间。<br/>参数示例: {"404":10}
safetyChain
String
时间戳鉴权设置,详细说明见下文。
speedLimit
Int
单链接下行速度限制,配置为大于0的正整数,单位为 MB/s。<br/>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表示成功,其他值表示失败。<br/>详情请参见错误码页面 公共错误码
message
String
模块错误信息描述,与接口相关。
codeDesc
String
英文错误信息,或业务侧错误码。<br/>详情请参见错误码页面 业务错误码

调用案例

示例参数

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"
}