有奖捉虫:云通信与企业服务文档专题,速来> HOT

接口描述

本接口(UpdateDsaHostInfo)用于修改域名对应源站配置。
接口请求域名:dsa.api.qcloud.com

  • 状态为下线、部署中的域名不可修改配置。
  • 一次仅支持修改一个域名对应的配置。
  • 一次可修改同一个域名的多个配置项。
  • 该接口调用频次上限为100次/分钟,超出上限则会返回错误,请勿高频调用。

可支持配置

  • 修改源站配置。
  • 修改域名所属项目。
  • 修改 HTTPS 配置。
  • 修改域名缓存规则。
  • 设置回源host。
  • 设置加速区域。
  • 设置 response header。

输入参数

以下请求参数列表仅列出了接口请求参数,正式调用时需要加上公共请求参数,详情请参见 公共请求参数 页面。其中,此接口的 Action 字段为 UpdateDsaHostInfo。

参数名称 是否必选 类型 描述
hostId Int 域名接入 ECDN 后的标识 ID。
您可通过 查询域名列表信息 接口查询域名的 hostId。
projectId Unsigned 项目 ID,指域名要添加入的项目的对应 ID,查看项目 ID
origin String 源站地址,源站配置可填写一个源站域名或者多个源站 IP。
可支持 domain:port 或者 ip:port 类型配置。
端口可配置区间0 – 65535,不设置端口时默认 HTTP 回80,HTTPS 回443,设置多个源站时仅允许设置一个相同端口。
示例:1.1.1.1,2.2.2.2或者1.1.1.1:8080,2.2.2.2:8080
https String HTTPS 配置信息(JSON),需要修改 HTTPS 配置时使用,查看 HTTPS 配置
cache String 缓存规则配置(json),查看缓存配置
area String 加速区域:默认只有中国大陆加速, ECDN 开启中国境外加速服务,立即申请使用资格 >>开通后可以配置其他区域:
  • mainland:中国大陆
  • oversea:中国港澳台及海外地区
  • global:全球
  • furlcache String 开启完整URL缓存。
    on 开启,表示不过滤问号后参数缓存。
    off 关闭,表示过滤问号后参数缓存。
    rspHeader String 自定义头部信息,需要修改自定义回源头部时使用,查看自定义头部配置
    strategyWeight String 权重回源配置。配置格式为{"key1":value,"key2":value}
    源站仅允许配置 IP,且 key 值与 “origin” 字段配置源站相同,value 值为权重,权重范围1 - 100。
    示例:若origin ="1.1.1.1:8080,2.2.2.2:8080",则权重 = {"1.1.1.1:8080":10,"2.2.2.2:8080":20}
    backupOrigin String 备份源站配置,仅允许在 origin 配置 IP 下可以配置,仅支持配置 IP。
    可支持 domain:port 或者 ip:port 类型配置。
    端口可配置区间0 – 65535,不设置端口时默认 HTTP 走80,HTTPS 回443,设置多个源站时仅允许设置一个相同端口。
    示例:1.1.1.1,2.2.2.2 或者 1.1.1.1:8080,2.2.2.2:8080
    fwdHost String 回源 Host 配置。需要修改回源 Host 时使用。示例:fwdHost = www.abc.com

    HTTPS 配置格式

    参数名称 是否必选 类型 描述
    type Int HTTPS 开关:
    0:表示关闭。
    2:表示启用,并且采用 HTTP 回源。
    4:表示启用,并采用协议跟随回源。
    crt String PEM 格式证书,当启用 HTTPS 时必须配置证书。
    private_key String PEM 格式密钥,当启用 HTTPS 时必须配置私钥。
    cert_id String 启用 HTTPS 后,需要采用腾讯云托管证书时,必须配置证书 ID 信息,证书托管配置只需传入此参数即可。
    message String 备注信息。
    注意:

    当需要提交证书信息时,请采用 POST 方式提交,防止出现 URL 长度越界问题。

    缓存配置格式

    参数名称 是否必选 类型 描述
    type Int 0:全部文件缓存配置
    1:按文件后缀类型缓存配置
    2:文件夹/目录路径缓存配置
    3:具体 URL 缓存配置,例如folder/*.jpg类型的正则匹配
    5:首页缓存设置
    rule String 具体类型的缓存规则,如.jpg;.png多个文件以;隔开
    (type == 0时只能配置为 all)
    time Int 缓存时间数值设置,其中0表示不缓存。与 unit 参数共同设置缓存时间
    unit String 时间单位:d天,h时,m分,s秒。与 time 参数共同设置缓存时间

    配置示例

    缓存规则优先级,从上往下优先级提高,最后一条优先级最高。

    [{"type":0,"rule":"all","time":0,"unit":"d"},
    {"type":1,"rule":".txt","time":1,"unit":"d"},
    {"type":2,"rule":"/test;/abc","time":1,"unit":"h"},
    {"type":3,"rule":"/test/*.jpg","time":1,"unit":"m"},
    {"type":5,"rule":"/","time":1,"unit":"s"}]
    注意:

    当需要 Cache 配置信息时,建议采用 POST 方式提交,防止URL 长度越界。

    自定义头部配置格式

    自定义回源头部采用 JOSN 格式配置,配置格式如下:

    {
    "key_name_1":"value_1",
    "key_name_2":"value_2",
    ...
    "key_name_N":"value_N"
    }
    注意:

    当设置自定义头部时,请采用 POST 方式提交,防止 URL 长度越界。

    输出参数

    参数名称 类型 描述
    code Int 公共错误码
    0:表示成功。
    其他值:表示失败。
    详情请见错误码页面的 公共错误码
    message String 模块错误信息描述,与接口相关。
    codeDesc String 英文错误信息,或业务侧错误码。
    data Object 输出结果,返回域名修改后的配置信息。

    data 字段说明

    参数名称 类型 描述
    host_id Int 域名接入 ECDN 后的唯一标识 ID。
    app_id Int 域名归属人的 AppID。
    project_id Unsigned 域名所属的项目 ID。
    host String 加速域名。
    cname String 域名接入 ECDN 的 CNAME 别名。
    status String 域名当前状态
    online:启用。
    offline:关闭。
    progress Int 配置部署状态
    0:表示部署完毕。
    1:表示正在部署中。
    mode Int 域名封禁状态,若为 '0',则表示域名未被封禁。
    locked Int 运维锁状态
    0:表示未锁定,用户可直接修改配置。
    1:表示锁定状态,需要提交工单审核后才能修改配置。
    deleted Int 域名是否删除
    0:表示域名未删除。
    1:表示域名已删除。
    origin String 源站地址。
    fwd_host String 回源 host 配置。
    rsp_header Array 自定义返回头部配置信息。
    https Object HTTPS 配置信息,详情请参见下文 HTTPS 字段说明
    cache String 缓存配置,查看缓存配置
    area String 加速区域。
    furlcache String 是否开启完整 URL 缓存。
    message String 信息描述。
    create_time String 域名创建时间。
    update_time String 域名上一次配置更新时间。
    strategy_weight String 回源权重。
    backup_origin String 备份源站。

    HTTPS 字段说明

    参数名称 类型 描述
    type Unsigned HTTPS 开关:
    0:表示关闭。
    2:表示启用,并且采用 HTTP 回源。
    4:表示启用,并采用协议跟随回源。
    cert_id String 腾讯云托管证书 ID,当使用腾讯云托管证书时返回此参数。
    cn String 证书域名。
    expire String SSL 证书过期时间。
    message String 证书备注信息。
    http2 String HTTP 2.0 开关:
    on:表示开启。
    off:表示关闭。
    注意:

    未在上述文档中说明的字段均为无效字段,可直接忽略。

    配置示例

    dsa.qcloud.com的源站地址修改为source2.dsa.qcloud.com
    启用 dsa.qcloud.com 域名的 HTTPS 配置,采用自有证书和协议跟随方式回源。
    启用缓存,.txt 类型缓存1天,/test 和 /abc 目录缓存1小时,/test/ 目录下所有 jpg 文件缓存1分钟,首页缓存1秒,其他文件不缓存。

    host: dsa.qcloud.com
    hostId: 1234
    origin: source2.dsa.qcloud.com
    回源方式:协议跟随  
    证书信息: *************** 
    证书私钥: ***************   

    GET 请求

    GET 请求需要将所有参数都加在 URL 后:
    当需要上传证书信息时和配置缓存规则时,由于URL长度限制,建议不要采用 Get 方式提交配置修改请求。

    https://dsa.api.qcloud.com/v2/index.php?
    Action=UpdateDsaHostInfo
    &SecretId=XXXXXXXXXXXXXXXXXXXXXXXXXXX
    &Timestamp=1462520137
    &Nonce=123456789
    &Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    &hostId=1234
    &origin=source2.dsa.qcloud.com
    &cache=[{"type":0,"rule":"all","time":0,"unit":"d"},{"type":1,"rule":".txt","time":1,"unit":"d"},{"type":2,"rule":"/test;/abc","time":1,"unit":"h"},{"type":3,"rule":"/test/*.jpg","time":1,"unit":"m"},{"type":5,"rule":"/","time":1,"unit":"s"}]

    POST 请求

    POST 请求时,参数填充在 HTTP Request-body 中,请求地址:

    https://dsa.api.qcloud.com/v2/index.php

    参数支持 form-data、x-www-form-urlencoded 等格式,参数数组如下:

    array (
    'Action' => 'UpdateDsaHostInfo',
    'SecretId' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXX',
    'Timestamp' => 1462782282,
    'Nonce' => 123456789,
    'Signature' => 'XXXXXXXXXXXXXXXXXXXXXXXX',
    'hostId' => '1234',
    'origin' => 'source2.dsa.qcloud.com',
    'https' => '{"type":4,"crt":"证书内容","private_key":"证书私钥内容"}',
    'cache' => ' [{"type":0,"rule":"all","time":0,"unit":"d"},{"type":1,"rule":".txt","time":1,"unit":"d"},{"type":2,"rule":"/test;/abc","time":1,"unit":"h"},{"type":3,"rule":"/test/*.jpg","time":1,"unit":"m"},{"type":5,"rule":"/","time":1,"unit":"s"}]'
    )

    返回结果示例

    修改成功

    {
      "code": 0,
      "message": "",
      "codeDesc": "Success",
      "data": {
          "host_id": 1234,
          "app_id": "*******",
          "project_id": 0,
          "host": "dsa.qcloud.com",
          "cname": "dsa.qcloud.com.dsa.dnsv1.com",
          "status": "online",
          "progress": 0,
          "mode": 0,
          "locked": 0,
          "deleted": 0,
          "origin": "source2.dsa.qcloud.com",
          "fwd_host": "dsa.qcloud.com",
          "rsp_header": [],
          "https": {"type": 0},
          "ip_access":{"type":"off","ips":[]},
          "ip_freq_limit":0,
          "message": "",
          "create_time": "2017-11-17 11:07:08",
          "update_time": "2018-01-28 12:52:02"
    }
    {
      "code": 0,
      "message": "",
      "codeDesc": "Success",
      "data": {
                "host_id": 1234,
              "app_id": "*******",
              "project_id": 0,
              "host": "dsa.qcloud.com",
              "cname": "dsa.qcloud.com.dsa.dnsv1.com",
          "status": "online",
          "progress": 0,
          "https_progress": 0,
          "mode": 0,
          "locked": 0,
          "deleted": 0,
              "origin": "source2.dsa.qcloud.com",
          "fwd_host": "dsa.qcloud.com",        
            "rsp_header": [],
              "https": {
                  "type": 4,
                  "crt":"***************",
                  "private_key":"***************"
             },
          },
          "ip_access": {
              "ips": [],
              "type": "off"
          },
          "ip_freq_limit": 0,
          "strategy_weight": [],
          "backup_origin": [],
          "message": "",
          "create_time": "2019-07-09 15:04:41",
          "update_time": "2019-09-20 17:52:07",
          "area": "global",
          "cache": [
              {
                  "type": 0,
                  "rule": "all",
                  "time": 0,
                  "unit": "d"
              },
              {
                  "type": 1,
                  "rule": ".txt",
                  "time": 1,
                  "unit": "d"
              },
              {
                  "type": 2,
                  "rule": "/test;/abc",
                  "time": 1,
                  "unit": "h"
              },
              {
                  "type": 3,
                  "rule": "/test/*.jpg",
                  "time": 1,
                  "unit": "m"
              },
              {
                  "type": 5,
                  "rule": "/",
                  "time": 1,
                  "unit": "s"
              }
          ],
          "icp_status": 1,
          "furl_cache": "off"
      }
    }
    }