调用BatchSetCdnDomainConfig、SetCdnDomainStagingConfig可以实现域名的批量配置,本文为您介绍该API可以配置哪些功能及功能参数用法。

说明

基本信息

ipv6
  • 功能说明:IPv6访问配置,该功能详细介绍请参见控制台配置说明IPv6配置
  • 功能ID(FunctionID/FuncId):194。
  • 参数说明:
    参数类型是否必选描述示例值
    switchString是否开启IPv6访问:
    • on:开启。
    • off:关闭。
    on
    regionString开启IPv6功能的地区,支持星号(*)。
    说明
    • 星号(*)表示所有区域都开启IPv6(目前仅支持针对所有区域都开启IPv6,如果需要仅针对某个特定区域开启IPv6,请提交工单申请)。
    • 不传该参数,表示默认所有区域都开启IPv6。
    *
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "switch",
                "argValue": "on"
            }, {
                "argName": "region",
                "argValue": "*"
            }],
            "functionName": "ipv6"
        }],
        "DomainNames": "example.com"
    }

回源配置

set_req_host_header
  • 功能说明:配置默认回源HOST,该功能详细介绍请参见控制台配置说明配置默认回源HOST
    源站和默认回源HOST的区别
    • 源站:指您的业务服务器,决定了回源时请求到的具体IP地址。
    • 默认回源HOST:指CDN回源请求头中携带的HOST字段值,决定了回源请求访问到该IP地址上的具体站点。
    重要
    • 对于普通域名(精准域名),回源HOST默认为加速域名。
    • 对于泛域名,回源HOST默认为实际访问的子域名。例如,泛域名是 *.aliyundoc.com,如果通过example.aliyundoc.com访问时,回源HOST即为example.aliyundoc.com。
    默认回源HOST与指定源站回源HOST的区别:
    • 默认回源HOST:通过配置默认回源HOST,CDN节点回源访问任意一个源站地址都将携带同一个回源HOST。
    • 指定源站回源HOST:通过配置指定源站回源HOST,可以给不同的源站配置不同的回源HOST,这样CDN节点回源访问不同的源站地址将携带不同的回源HOST。
  • 功能ID(FunctionID/FuncId):18。
  • 参数说明:
    参数类型是否必选描述示例值
    domain_nameString回源HOST头内容。example.com
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "domain_name",
                "argValue": "example.com"
            }],
            "functionName": "set_req_host_header"
        }],
        "DomainNames": "example.com"
    }
forward_scheme
  • 功能说明:配置回源协议,该功能详细介绍请参见控制台配置说明配置回源协议
  • 功能ID(FunctionID/FuncId):47。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启回源协议:
    • on:开启。
    • off:关闭。
    on
    scheme_originString回源类型,取值:
    • http:CDN以HTTP协议回源。
    • https:CDN以HTTPS协议回源。
    • follow(跟随):客户端以HTTP或者HTTPS协议请求CDN,CDN跟随客户端的协议请求源站。
    说明 scheme_origin不配置时,默认取值为follow。
    follow
    scheme_origin_portString回源自定义端口,需要与scheme_origin参数搭配使用,取值:
    • scheme_origin取值为http时,只需要配置一个HTTP协议的回源端口,例如:8080。
    • scheme_origin取值为https时,只需要配置一个HTTPS协议的回源端口,例如:4433。
    • scheme_origin取值为follow时,需要同时配置HTTP协议和HTTPS协议的回源端口,中间用半角冒号(:)分隔,例如:8080:4433。
    8080:4433
  • 配置示例一:CDN跟随客户端的请求协议回源,回源访问的端口为协议默认端口,即HTTP协议对应80端口,HTTPS协议对应443端口。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "scheme_origin",
                "argValue": "follow"
            }],
            "functionName": "forward_scheme"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:CDN跟随客户端的请求协议回源,回源访问的端口为自定义端口,HTTP协议对应8080端口,HTTPS协议对应4433端口。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "scheme_origin",
                "argValue": "follow"
            }, {
                "argName": "scheme_origin_port",
                "argValue": "8080:4433"
            }],
            "functionName": "forward_scheme"
        }],
        "DomainNames": "example.com"
    }
l2_oss_key
  • 功能说明:配置私有Bucket回源,该功能详细介绍请参见控制台配置说明OSS私有Bucket回源
  • 功能ID(FunctionID/FuncId):85。
  • 参数说明:
    参数类型是否必选描述示例值
    private_oss_authString是否开启私有Bucket回源:
    • on:开启。
    • off:关闭。
    功能开启以后,系统会自动配置STS安全令牌,配置更简单,但是仅支持CDN域名回源到同一个阿里云账号下的OSS私有Bucket。关于STS安全令牌更多信息,请参见什么是STS
    on
    perm_private_oss_tblString永久安全令牌配置,配置格式是access_id=123 access_secret=123abc(中间用空格分隔)。

    配置了永久安全令牌以后,除了支持CDN域名回源到同一个阿里云账号下的OSS私有Bucket,还支持CDN域名回源到其他阿里云账号下的OSS私有Bucket。关于永久安全令牌更多信息,请参见创建AccessKey

    access_id=123 access_secret=123abc
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "private_oss_auth",
                "argValue": "on"
            },{
                "argName": "perm_private_oss_tbl",
                "argValue": "access_id=123 access_secret=123abc"
            }],
            "functionName": "l2_oss_key"
        }],
        "DomainNames": "example.com"
    }
oss_key_list
  • 功能说明:OSS回源私钥列表,可以配置一条或者多条规则,代表多个不同的OSS私有Bucket与对应的安全令牌。
  • 功能ID(FunctionID/FuncId):183。
  • 参数说明:
    参数类型是否必选描述示例值
    hostStringOSS Bucket 的完整地址。example.oss-cn-hangzhou.aliyuncs.com
    keyString永久安全令牌配置,配置格式是access_id=123 access_secret=123abc(中间用空格分隔)。

    配置了永久安全令牌以后,除了支持CDN域名回源到同一个阿里云账号下的OSS私有Bucket,还支持CDN域名回源到另外一个阿里云账号下的OSS私有Bucket。关于永久安全令牌更多信息,请参见创建AccessKey

    access_id=123 access_secret=123abc
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "host",
                "argValue": "example.oss-cn-hangzhou.aliyuncs.com"
            },{
                "argName": "key",
                "argValue": "access_id=123 access_secret=123abc"
            }],
            "functionName": "oss_key_list"
        }],
        "DomainNames": "example.com"
    }
https_origin_sni
  • 功能说明:配置回源SNI,该功能详细介绍请参见控制台配置说明配置回源SNI
  • 功能ID(FunctionID/FuncId):114。
  • 参数说明:
    参数类型是否必选描述示例值
    enabledString是否开启回源SNI功能:
    • on:开启。
    • off:关闭。
    on
    https_origin_sniString回源请求携带的SNI信息(即回源请求需要访问的源站站点地址)。origin.example.com
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "https_origin_sni",
                "argValue": "origin.example.com"
            }, {
                "argName": "enabled",
                "argValue": "on"
            }],
            "functionName": "https_origin_sni"
        }],
        "DomainNames": "example.com"
    }
forward_timeout
  • 功能说明:配置回源请求超时时间,该功能详细介绍请参见控制台配置说明配置回源HTTP请求超时时间
  • 功能ID(FunctionID/FuncId):124。
  • 参数说明:
    参数类型是否必选描述示例值
    forward_timeoutInteger请求超时时间,单位:秒。
    说明 建议设置时间小于100秒。
    30
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "forward_timeout",
                "argValue": "30"
            }],
            "functionName": "forward_timeout"
        }],
        "DomainNames": "example.com"
    }
advanced_origin
  • 功能说明:配置高级回源,该功能详细介绍请参见控制台配置说明高级回源
  • 功能冲突说明:高级回源功能与条件源站功能(功能函数:origin_dns_host,功能ID:212)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):235。
  • 参数说明:
    参数类型是否必选描述示例值
    variable_typeString变量类型,取值:
    • header:用户请求中携带的header(request header)。
    • arg:用户请求URL中携带的参数(query string parameter)。
    • uri:用户请求URL中携带的路径(path)。
    • cookie:用户请求中携带的cookie(request cookie)。
    uri
    variableString变量名称。
    说明 variable_type=uri的情况下,variable只能固定=uri。
    uri
    conditionsString条件,取值:
    • ==:表示“等于”。
    • !=:表示“不等于”。
    ==
    valueString变量的取值。/image
    originString回源查询DNS使用的域名(即用户请求中对应的变量值,匹配后需要回源到指定的源站地址)。origin.example.com
  • 配置示例:
    {
      "Functions": [{
        "functionArgs": [{
          "argName": "conditions",
          "argValue": "=="
        }, {
          "argName": "variable_type",
          "argValue": "uri"
        }, {
          "argName": "value",
          "argValue": "/image"
        }, {
          "argName": "origin",
          "argValue": "origin.example.com"
        }, {
          "argName": "variable",
          "argValue": "uri"
        }],
        "functionName": "advanced_origin"
      }],
      "DomainNames": "example.com",
    }
follow_302
  • 功能说明:配置回源302跟随,该功能详细介绍请参见控制台配置说明配置回源301/302跟随
  • 功能ID(FunctionID/FuncId):219。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启回源302跟随:
    • on:开启。
    • off:关闭。
    on
    max_triesInteger302跟随次数上限。
    • 默认值:2。
    • 取值范围:[1,5]。
    说明 回源次数-1(次)=302跟随次数,即默认的回源次数上限为3,可配置范围是[2,6]。
    2
    retain_argsString302跟随时是否保留原请求参数回目标源:
    • on:保留。
    • off(默认):不保留。
    off
    retain_headerString302跟随时是否保留原请求头回目标源:
    • on:保留。
    • off(默认):不保留。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "max_tries",
                "argValue": 2
            }, {
                "argName": "retain_args",
                "argValue": "off"
            }, {
                "argName": "retain_header",
                "argValue": "off"
            }],
            "functionName": "follow_302"
        }],
        "DomainNames": "example.com"
    }
set_req_header
  • 功能说明:配置自定义回源HTTP头,该功能详细介绍请参见控制台配置说明配置回源HTTP请求头(旧版)
    说明 set_req_header是v1版本,建议您使用v2版本:origin_request_header,v2版本支持更丰富的自定义回源HTTP头功能。
  • 功能ID(FunctionID/FuncId):39。
  • 参数说明:
    参数类型是否必选描述示例值
    keyString回源头名称。Accept-Encoding
    valueString回源头的值。如果要删除某个回源头,设置回源头的值为null。gzip
  • 配置示例一:添加一个回源HTTP请求头。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "value",
                "argValue": "gzip"
            }, {
                "argName": "key",
                "argValue": "Accept-Encoding"
            }],
            "functionName": "set_req_header"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:删除一个回源HTTP请求头(将value值设置为null)。
    {
        "Functions": [{
         "functionArgs": [{
            "argName": "value",
            "argValue": "null"
          }, {
           "argName": "key",
           "argValue": "User-Agent"
          }],
          "functionName": "set_req_header"
        }],
        "DomainNames": "example.com"
    }
origin_request_header
  • 功能说明:配置回源HTTP请求头(新),该功能详细介绍请参见控制台配置说明配置回源HTTP请求头
  • 功能ID(FunctionID/FuncId):228。
  • 参数说明:
    参数类型是否必选描述示例值
    header_operation_typeString请求头操作,取值:
    • add:添加。
    • delete:删除。
    • modify:变更。
    • rewrite:替换。
    add
    header_nameString请求头名称。Accept-Encoding
    header_valueString请求头值。一个请求头参数中可以配置多个值,多个值用英文逗号(,)分隔。gzip
    duplicateString是否允许重复添加名称相同的请求头。当header_operation_type使用add时(即执行增加操作),需要设置是否允许重复:
    • on:允许。
    • off:不允许。
    off
    header_sourceString查找需要替换的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数,取值支持正则表达式。value1
    header_destinationString替换后的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数。value123
    match_allString设置匹配模式。当header_operation_type使用rewrite时(即执行替换操作),需要设置匹配模式:
    • on:匹配所有(所有匹配上的值都会被替换)。
    • off:仅匹配第一个(只有第一个匹配上的值会被替换)。
    off
  • 配置示例:为加速域名example.com添加自定义回源请求头,请求头名称=Accept-Encoding,请求头值=gzip。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "header_operation_type",
                "argValue": "add"
            }, {
                "argName": "header_name",
                "argValue": "Accept-Encoding"
            }, {
                "argName": "header_value",
                "argValue": "gzip"
            }, {
                "argName": "duplicate",
                "argValue": "off"
            }],
            "functionName": "origin_request_header"
        }],
        "DomainNames": "example.com"
    }
origin_response_header
  • 功能说明:配置回源HTTP响应头,该功能详细介绍请参见控制台配置说明配置回源HTTP响应头
  • 功能ID(FunctionID/FuncId):229。
  • 参数说明:
    参数类型是否必选描述示例值
    header_operation_typeString响应头操作,取值:
    • add:添加。
    • delete:删除。
    • modify:变更。
    • rewrite:替换。
    add
    header_nameString响应头名称。Cache-Control
    header_valueString响应头值。一个响应头参数中可以配置多个值,多个值用英文逗号(,)分隔。no-cache
    duplicateString是否允许重复添加名称相同的响应头。当header_operation_type使用add时(即执行增加操作),需要设置是否允许重复:
    • on:允许重复。
    • off:不允许重复。
    off
    header_sourceString查找需要替换的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数,取值支持正则表达式。value1
    header_destinationString替换后的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数。value123
    match_allString匹配模式。当header_operation_type使用rewrite时(即执行替换操作),需要设置匹配模式:
    • on:匹配所有(所有匹配上的值都会被替换)。
    • off:仅匹配第一个(只有第一个匹配上的值会被替换)。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "header_operation_type",
                "argValue": "add"
            }, {
                "argName": "header_name",
                "argValue": "Cache-Control"
            }, {
                "argName": "header_value",
                "argValue": "no-cache"
            }, {
                "argName": "duplicate",
                "argValue": "off"
            }],
            "functionName": "origin_response_header"
        }],
        "DomainNames": "example.com"
    }
back_to_origin_url_rewrite
  • 功能说明:改写回源URI,该功能详细介绍请参见控制台配置说明改写回源URL
  • 功能ID(FunctionID/FuncId):225。
  • 参数说明:
    参数类型是否必选描述示例值
    source_urlString被重写的URI。^/hello$
    target_urlString重写的目标URI。/hello/test
    flagString改写操作的执行规则,取值:
    • 空:执行完该条规则后,后续rewrite规则会继续执行。
    • break:执行完该条规则后,后续rewrite规则不再执行。
    • enhance_break:类似break,区别在于会带着参数一起进行处理,并且针对flv直播也会生效。
    break
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "flag",
                "argValue": "break"
            }, {
                "argName": "source_url",
                "argValue": "^/hello$"
            }, {
                "argName": "target_url",
                "argValue": "/hello/test"
            }],
            "functionName": "back_to_origin_url_rewrite"
        }],
        "DomainNames": "example.com",
    }
back_to_origin_argument_rewrite
  • 功能说明:改写回源参数,该功能详细介绍请参见控制台配置说明改写回源参数
    说明 回源参数改写,改写的是回源请求URL的查询参数,支持配置多个不同的改写规则,改写动作的优先级为添加参数删除参数仅保留修改参数。当不同的改写规则作用于同一个参数时,只有高优先级的规则会生效。
  • 功能ID(FunctionID/FuncId):224。
  • 参数说明:
    参数类型是否必选描述示例值
    delete_argumentString删除参数列表,多个参数用空格分隔。code1
    save_argumentString保留参数列表,多个参数用空格隔开。仅保留列出的参数,添加参数和删除参数仍会生效。
    ignore_all_argumentString是否忽略所有参数:
    • on:忽略所有参数,除了添加参数功能仍能生效以外,删除参数、仅保留、修改参数功能都将失效。
    • off(默认):关闭忽略所有参数功能,保留参数、添加参数、删除参数仍会生效。
    on
    add_argumentString添加参数,优先级最高,多个参数用空格隔开。value=123
    modify_argumentString修改参数,优先级最低,若参数被删除则不会保留,多个参数用空格隔开。value=321
    enableString是否开启改写回源参数:
    • on:开启。
    • off:关闭 。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "delete_argument",
                "argValue": ""
            }, {
                "argName": "save_argument",
                "argValue": ""
            }, {
                "argName": "add_argument",
                "argValue": ""
            }, {
                "argName": "modify_argument",
                "argValue": ""
            }, {
                "argName": "ignore_all_argument",
                "argValue": "on"
            }, {
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "back_to_origin_argument_rewrite"
        }],
        "DomainNames": "example.com"
    }
aws_s3_bucket
  • 功能说明:配置Amazon S3鉴权Bucket。
  • 功能ID(FunctionID/FuncId):186。
  • 参数说明:
    参数类型是否必选描述示例值
    enabledString是否开启Amazon S3鉴权Bucket:
    • l2:开启。
    • off:关闭。
    l2
    bucketnameStringAmazon S3 Bucket名称。/
    accesskeyStringAWS AccessKey。123456789
    secretkeyStringAWS SecretKey。12345678
    regionStringAmazon S3存储区域。us-east-2
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enabled",
                "argValue": "l2"
            }, {
                "argName": "accesskey",
                "argValue": "123456789"
            }, {
                "argName": "secretkey",
                "argValue": "123456789"
            }, {
                "argName": "region",
                "argValue": "us-east-2"
            }],
            "functionName": "aws_s3_bucket"
        }],
        "DomainNames": "example.com"
    }
origin_certificate_verification
  • 功能说明:配置回源证书校验(SNI白名单),该功能详细介绍请参见控制台配置说明Common Name白名单
  • 功能ID(FunctionID/FuncId):223。
  • 参数说明:
    参数类型是否必选描述示例值
    enabledString是否启用回源证书校验:
    • on:启用。
    • off:关闭。
    on
    common_name_whitelistString证书白名单域名列表,支持配置多个域名,多个域名之间使用英文逗号(,)分隔。匹配了这些白名单域名的证书可以通过校验。example.com
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "common_name_whitelist",
                "argValue": "example.com"
            }],
            "functionName": "origin_certificate_verification"
        }],
        "DomainNames": "example.com"
    }
origin_dns_host
  • 功能说明:配置条件源站,可以通过与规则引擎功能(功能函数:condition,功能ID:250)配合使用,实现基于用户请求中的路径、URL参数、请求头等信息来回源到指定源站。该功能详细介绍请参见控制台配置说明配置条件源站
  • 前提条件:在添加条件源站配置之前,您需要至少先创建一条规则引擎的规则条件,在添加条件源站配置时,您必须配置一条关联的规则条件,具体请参见规则引擎。如果添加条件源站配置时没有关联规则条件,则会使CDN回源的所有流量都指向这个唯一的源站地址(也就失去了通过规则条件来控制回源地址的意义)。
  • 功能冲突说明:条件源站功能与高级回源功能(功能函数:advanced_origin,功能ID:235)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):212。
  • 参数说明:
    参数类型是否必选描述示例值
    ali_origin_dns_hostString回源查询DNS使用的域名。example.com
  • 配置示例:通过设置parentid来引用已经使用规则引擎功能(功能函数:condition,功能ID:250)创建好的某个规则条件(通过添加配置时生成的configid来引用),实现在用户请求命中这个规则条件的情况下,回源到指定的源站地址。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ali_origin_dns_host",
                "argValue": "example.com"
            }],
            "functionName": "origin_dns_host",
            "parentId":30119730104****
        }],
        "DomainNames": "example.com"
    }
origin_host
  • 功能说明:配置指定源站回源HOST,可以对指定源站设置指定的回源HOST,该功能详细介绍请参见控制台配置说明指定源站回源HOST
    源站和默认回源HOST的区别
    • 源站:指您的业务服务器,决定了回源时请求到的具体IP地址。
    • 默认回源HOST:指CDN回源请求头中携带的HOST字段值,决定了回源请求访问到该IP地址上的具体站点。
    重要
    • 对于普通域名(精准域名),回源HOST默认为加速域名。
    • 对于泛域名,回源HOST默认为实际访问的子域名。例如,泛域名是 *.aliyundoc.com,如果通过example.aliyundoc.com访问时,回源HOST即为example.aliyundoc.com。
    默认回源HOST与指定源站回源HOST的区别:
    • 默认回源HOST:通过配置默认回源HOST,CDN节点回源访问任意一个源站地址都将携带同一个回源HOST。
    • 指定源站回源HOST:通过配置指定源站回源HOST,可以给不同的源站配置不同的回源HOST,这样CDN节点回源访问不同的源站地址将携带不同的回源HOST。
  • 功能ID(FunctionID/FuncId):242。
  • 参数说明:
    参数类型是否必选描述示例值
    originString指定源站地址(也可以不指定源站地址,不指定源站地址时,参数origin的值设置为all,代表所有源站)。example.com
    hostString指定HOST(也可以不指定HOST,参数host的值设置为ali_follow_origin代表跟随源站地址作为host值)。host.example.com
  • 配置示例一:用户请求回源到源站example.com时,使用的host值为host.example.com
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "example.com"
            }, {
                "argName": "host",
                "argValue": "host.example.com"
            }],
            "functionName": "origin_host"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:用户回源到所有的源站(源站值用all来代表)都是用同一个host值host.example.com
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "all"
            }, {
                "argName": "host",
                "argValue": "host.example.com"
            }],
            "functionName": "origin_host"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例三:用户回源到所有的源站(源站值用all来代表)都跟随源站地址作为host值(用ali_follow_origin来表示)。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "all"
            }, {
                "argName": "host",
                "argValue": "ali_follow_origin"
            }],
            "functionName": "origin_host"
        }],
        "DomainNames": "example.com"
    }
ali_origin_port_scheme
  • 功能说明:配置回源端口和协议。
  • 功能ID(FunctionID/FuncId):276。
  • 参数说明:
    参数类型是否必选描述示例值
    portString回源端口。
    说明 当scheme设置为follow时,需填写http:80|https:443这样的格式。
    80
    schemeString回源协议:自定义回源协议(支持http、https、follow、https_sm、follow_sm)。
    • http:按照HTTP协议回源。
    • https:按照HTTPS协议回源,采用国际算法。
    • follow:回源协议跟随(使用HTTPS协议回源时,仅支持国际算法)。
      • 客户端采用HTTP协议,按照HTTP协议回源。
      • 客户端采用HTTPS协议。
        • 客户端为国际算法,按照HTTPS协议回源,采用国际算法。
        • 客户端为国密算法,按照HTTPS协议回源,采用国际算法。
    • https_sm:按照HTTPS协议回源,采用国密算法。
    • follow_sm:回源协议跟随(使用HTTPS协议回源时,既支持国际算法,也支持国密算法)。
      • 客户端采用HTTP协议,按照HTTP协议回源。
      • 客户端采用HTTPS协议。
        • 客户端为国际算法,按照HTTPS协议回源,采用国际算法。
        • 客户算为国密算法,按照HTTPS协议回源,采用国密算法。
    说明 国际算法指的是国际标准的加密算法,国密算法指的是中国国家密码管理局认定的国产加密算法。
    http
  • 配置示例一:回源协议设置为http,回源端口设置为80。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "port",
                "argValue": "80"
            }, {
                "argName": "scheme",
                "argValue": "http"
            }],
            "functionName": "ali_origin_port_scheme"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:回源协议follow用户请求使用的协议,使用HTTP协议回源时,回源到源站的80端口,使用HTTPS协议回源时,回源到源站的443端口。
    {
     "Functions": [{
       "functionArgs": [{
         "argName": "port",
         "argValue": "http:80|https:443"
        }, {
         "argName": "scheme",
         "argValue": "follow"
        }],
        "functionName": "ali_origin_port_scheme"
     }],
      "DomainNames": "example.com"
    }
origin_sni
  • 功能说明:配置指定源站回源SNI,可以对指定源站设置指定的回源SNI。
  • 功能ID(FunctionID/FuncId):262。
  • 参数说明:
    参数类型是否必选描述示例值
    originString源站地址(也可以不指定源站地址,不指定源站地址的时候,参数origin的值设置为all)。example.com
    sni_hostStringsni host值:
    • 可以设置为固定值,例如:example.org
    • 跟随源站地址作为sni,设置为ali_follow_origin
    • 跟随回源host作为sni,设置为ali_follow_host
    example.org
    keepalive_sniString是否开启长连接SNI匹配:
    • on:开启。
    • off:关闭。
    说明 开启后,不同回源SNI将使用不同长连接。
    /
  • 配置示例一:用户请求回源到源站origin.example.com时,使用的SNI值为host.example.com
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "origin.example.com"
            }, {
                "argName": "sni_host",
                "argValue": "host.example.com"
            }],
            "functionName": "origin_sni"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:用户回源到所有的源站(源站值用all来表示)都使用同一个SNI值host.example.com
    {
     "Functions": [{
       "functionArgs": [{
         "argName": "origin",
         "argValue": "all"
        }, {
         "argName": "sni_host",
         "argValue": "host.example.com"
       }],
       "functionName": "origin_sni"
      }],
      "DomainNames": "example.com"
    }
  • 配置示例三:用户回源到所有的源站(源站值用all来表示)都跟随源站地址作为SNI值(使用参数值ali_follow_origin来表示)。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "all"
            }, {
                "argName": "sni_host",
                "argValue": "ali_follow_origin"
            }],
            "functionName": "origin_sni"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例四:用户回源到所有的源站(源站值用all来表示)都跟随回源host作为SNI值(使用参数值ali_follow_host来表示)。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin",
                "argValue": "all"
            }, {
                "argName": "sni_host",
                "argValue": "ali_follow_host"
            }],
            "functionName": "origin_sni"
        }],
        "DomainNames": "example.com"
    }
source_group
  • 功能说明:源站组设置。
  • 功能ID(FunctionID/FuncId):294。
  • 参数说明:
    参数类型是否必选描述示例值
    source_group_nameString源站组名称,支持小写英文字母、数字和下划线,最大长度不超过128个字节。example_origin
    source_infoString源站信息,格式为源站地址_优先级_权重_端口,不同参数值之间用下划线分隔,多个源站之间用英文(,)逗号分隔。
    • 源站地址:支持IPv4、IPv6、域名。
    • 优先级:支持1~65535(值越小优先级越大)。
    • 权重:支持1~100(CDN回源的时候将按照源站权重来分配发送给不同源站的请求比例)。
    • 端口:支持1~65535。
    • 单个源站:192.168.0.1_10_33_80
    • 多个源站:192.168.0.1_10_33_80,192.0.2.1_10_67_80
    retry_timesInteger回源重试次数。3
    retry_status_ruleInteger回源重试状态码,目前仅支持配置以下五种:4xx、5xx、404、404-or-5xx、4xx-or-5xx,配置其中一个即可。404-or-5xx
    failback_sourceString备份使用基础源信息,取值:
    • on:在源站组内的所有源站都不可用的情况下,将会使用基本配置-源站信息里面的源站地址。
    • off:在源站组内的所有源站都不可用的情况下,将会直接给客户端返回表示源站不可用的5xx状态码。
    on
    说明 回源重试逻辑:
    • 重试次数:回源重试的次数。
      • 回源重试只会在同一个源站组内的不同IP地址之间进行重试。
      • 实际最大重试次数受限于同一个源站组内的可用IP数量。
      • 如果不配置重试次数retry_times,默认重试次数是在3次和可用源站IP数之间取最小值。
      • 如果配置重试次数retry_times,是在配置的重试次数和可用源站IP数之间取最小值。
    • 重试状态码:节点在收到某种状态码的时候进行重试。
      • 如果不配置重试状态码retry_status_rule,默认在源站响应5xx状态码的时候进行重试。
      • 如果配置重试状态码retry_status_rule,将会按照配置的状态码进行故障转移重试。重试状态码目前仅支持配置以下五种:4xx、5xx、404、404-or-5xx、4xx-or-5xx,配置其中一个即可。
      • 配置重试状态码retry_status_rule后,默认5xx状态码仍生效。例如配置了404,则CDN节点收到404或者5xx的时候都会进行重试。
    • 回源重试顺序:按照同一个源站组内IP地址的优先级从高到低进行重试。
    • 回源超时场景:源站主动响应重试状态码的时候,CDN节点收到重试状态码之后就会重试。如果没有收到源站主动响应的重试状态码,则会遵循超时时间处理流程,达到超时时间之后就会触发CDNCDN节点重试。
      • 源站TCP建连超时:10秒。
      • 源站写超时:30秒(源站建连后写入内容超时)。
      • 源站读超时:30秒(源站建连后在一定时间内没有把CDN节点请求的内容完整响应回去)。
    • 源站探测逻辑
      • 四层连接异常:如果CDN节点与某个源站IP四层连接失败,会把该源站IP放到一个dead table中,这样后续的回源请求就不会去访问这个源站IP;此后CDN节点会每隔5秒四层探测一次该源站IP,如果建连成功,则将该源站IP恢复到可用列表中。
      • 四层连接正常:如果CDN节点与源站IP四层连接正常,但收到源站响应的重试状态码(例如:5xx),此时虽然会触发重试的逻辑,但该源站IP仍然还在可用列表中,下次访问还会按权重去请求该源站(即四层连接正常的情况下,七层异常不会主动屏蔽源站IP,如果需要主动屏蔽源站IP,则需要另外配置“回源7层监控检查”功能)。
  • 配置示例:
    {  
      "Functions": [{     
        "functionArgs": [{    
          "argName": "source_group_name",       
          "argValue": "test_yidong" 
      }, { 
          "argName": "source_info", 
          "argValue": "192.168.0.1_10_33_80,192.0.2.1_10_67_80" 
      }, {   
          "argName": "retry_times",  
          "argValue": "3"       
      }, {  
          "argName": "retry_status_rule",  
          "argValue": "404,502"    
      }, {  
          "argName": "failback_source",        
          "argValue": "on"  
      }],    
        "functionName": "source_group" 
      }],  
      "DomainNames": "example.com"
    }
ipv6_origin
  • 功能说明:配置IPv6回源,该功能详细介绍请参见控制台配置说明配置IPv6回源
  • 功能ID(FunctionID/FuncId):265
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启IPv6回源功能。
    • on:开启。
    • off:关闭。
    说明 开启IPv6回源功能后,CDN回源侧将提供IPv6服务。
    • CDN节点和源站都具备可用的IPv6地址,则使用IPv6建连。
    • 以下场景使用IPv4建连:
      • CDN节点不具备可用的IPv6地址。
      • 源站不具备可用的IPv6地址。
      • CDN节点和源站都不具备可用的IPv6地址。
    on
    followString是否开启回源跟随客户端IP协议版本功能。
    • on:开启。
    • off:关闭。
    说明 开启回源跟随客户端IP协议版本功能后,CDN回源将会跟随客户端请求使用的IP协议版本。
    • 客户端请求使用IPv6,则CDN优先回源IPv6源站,如果没有IPv6源站,则使用IPv4源站。
    • 客户端请求使用IPv4,则CDN优先回源IPv4源站,如果没有IPv4源站,则使用IPv6源站。
    on
    ipv6_v4_mix_usedString是否开启“源站IPv4地址/IPv6地址轮询”功能。
    • on:开启。
    • off:关闭。
    说明
    • “源站IPv4地址/IPv6地址轮询”功能与“IPv6回源”、“回源跟随客户端IP协议版本”这两个功能是互斥的,“回源v4/v6轮询”功能一旦开启,“IPv6回源”、“回源跟随客户端IP协议版本”这两个功能就会失效。
    • “源站IPv4地址/IPv6地址轮询”功能的作用是不论客户端请求使用的是IPv4还是IPv6,也不论源站有几个IPv4地址、几个IPv6地址,都会统一使用轮询方式回源到各个源站地址。
    • 如果IPv4、IPv6地址配置了权重比例,那么还会按照权重比例回源。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            },{
                "argName": "follow",
                "argValue": "on"
            }],
            "functionName": "ipv6_origin"
        }],
        "DomainNames": "example.com"
    }

缓存配置

filetype_based_ttl_set
  • 功能说明:配置文件过期时间,该功能详细介绍请参见控制台配置说明配置缓存过期时间
  • 功能ID(FunctionID/FuncId):6。
  • 参数说明:
    参数类型是否必选描述示例值
    ttlInteger缓存时间,单位为秒,取值范围是1~99999999(3年多一些)。500000
    file_typeString文件类型,区分大小写。多个文件类型用半角逗号(,)分隔。例如jpg,txt。jpg
    weightInteger权重。取值:1~99。
    说明 默认为1,数字越大优先级越高。
    1
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "file_type",
                "argValue": "jpg"
            }, {
                "argName": "weight",
                "argValue": "1"
            }, {
                "argName": "ttl",
                "argValue": "500000"
            }],
            "functionName": "filetype_based_ttl_set"
        }],
        "DomainNames": "example.com"
    }
path_based_ttl_set
  • 功能说明:配置目录过期时间,该功能详细介绍请参见控制台配置说明配置缓存过期时间
  • 功能ID(FunctionID/FuncId):7。
  • 参数说明:
    参数类型是否必选描述示例值
    ttlInteger缓存时间,单位为秒,取值范围是1~99999999(3年多一些)。500000
    pathString目录,必须以正斜线(/)开头。/example/demo
    weightInteger权重。取值:1~99。
    说明 默认为1,数字越大优先级越高。
    1
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "path",
                "argValue": "/example/demo"
            }, {
                "argName": "weight",
                "argValue": "1"
            }, {
                "argName": "ttl",
                "argValue": "500000"
            }],
            "functionName": "path_based_ttl_set"
        }],
        "DomainNames": "example.com"
    }
filetype_force_ttl_code
  • 功能说明:配置文件状态码过期时间,该功能详细介绍请参见控制台配置说明配置状态码过期时间
  • 功能ID(FunctionID/FuncId):63。
  • 参数说明:
    参数类型是否必选描述示例值
    file_typeString文件类型,区分大小写,多个用半角逗号(,)分隔,例如:jpg,txt。jpg
    code_stringString状态码及其缓存时间,单位为秒,取值范围是1~99999999(3年多一些),多个用半角逗号(,)分隔。例如:302=0,301=0,4xx=2。403=10
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "file_type",
                "argValue": "jpg"
            }, {
                "argName": "code_string",
                "argValue": "403=10"
            }],
            "functionName": "filetype_force_ttl_code"
        }],
        "DomainNames": "example.com"
    }
path_force_ttl_code
  • 功能说明:配置路径状态码过期时间,该功能详细介绍请参见控制台配置说明配置状态码过期时间
  • 功能ID(FunctionID/FuncId):65。
  • 参数说明:
    参数类型是否必选描述示例值
    pathString目录,必须以正斜线(/)开头,例如:/image。/example/demo
    code_stringString状态码及其缓存时间,单位为秒,取值范围是1~99999999(3年多一些),多个用半角逗号(,)分隔。例如:302=0,301=0,4xx=2。403=10,404=15
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "path",
                "argValue": "/example/demo"
            }, {
                "argName": "code_string",
                "argValue": "403=10,404=15"
            }],
            "functionName": "path_force_ttl_code"
        }],
        "DomainNames": "example.com"
    }
default_ttl_code
  • 功能说明:配置状态码过期时间(源站优先),该功能详细介绍请参见控制台配置说明配置状态码过期时间(源站优先)
  • 功能ID(FunctionID/FuncId):207。
  • 参数说明:
    参数类型是否必选描述示例值
    default_ttl_codeString状态码及其缓存时间,单位为秒,取值范围是1~99999999(3年多一些),多个状态码之间用半角逗号(,)分隔。4xx=3,200=3600,5xx=1
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "default_ttl_code",
                "argValue": "4xx=3,200=3600,5xx=1"
            }],
            "functionName": "default_ttl_code"
        }],
        "DomainNames": "example.com"
    }
set_resp_header
  • 功能说明:配置自定义HTTP响应头,该功能详细介绍请参见控制台配置说明配置自定义HTTP响应头
  • 功能ID(FunctionID/FuncId):27。
  • 参数说明:
    参数类型是否必选描述示例值
    keyString响应头。Cache-Control
    valueString响应头值,多个值之间用英文逗号(,)分隔。
    说明 如果要删除某个响应头,请设置响应头的值为null。
    no-cache
    header_operation_typeString请求头操作,取值:
    • add:添加。
    • delete:删除。
    • modify:变更。
    • rewrite:替换。
    add
    duplicateString是否允许重复添加名称相同的请求头。当header_operation_type使用add时(即执行增加操作),需要设置是否允许重复:
    • on:允许重复。
    • off:不允许重复。
    off
    header_sourceString查找需要替换的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数,取值支持正则表达式。value1
    header_destinationString替换后的参数值。当header_operation_type使用rewrite时(即执行替换操作),需要设置该参数。value123
    match_allString设置匹配模式。当header_operation_type使用rewrite时(即执行替换操作),需要设置匹配模式:
    • on:匹配所有(所有匹配上的值都会被替换)。
    • off:仅匹配第一个(只有第一个匹配上的值会被替换)。
    /
    access_origin_controlString是否开启跨域访问:
    • on:开启CDN节点对用户请求的跨域校验。
    • off:关闭该功能。
    /
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "header_operation_type",
                "argValue": "add"
            }, {
                "argName": "key",
                "argValue": "Cache-Control"
            }, {
                "argName": "value",
                "argValue": "no-cache"
            }, {
                "argName": "duplicate",
                "argValue": "off"
            }],
            "functionName": "set_resp_header"
        }],
        "DomainNames": "example.com"
    }
error_page
  • 功能说明:配置自定义页面,该功能详细介绍请参见控制台配置说明配置自定义页面
  • 功能ID(FunctionID/FuncId):15。
  • 参数说明:
    参数类型是否必选描述示例值
    error_codeInteger错误码。404
    rewrite_pageString重定向页面。http://example.aliyundoc.com/error404.html
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "error_code",
                "argValue": "404"
            }, {
                "argName": "rewrite_page",
                "argValue": "http://example.aliyundoc.com/error404.html"
            }],
            "functionName": "error_page"
        }],
        "DomainNames": "example.com"
    }
host_redirect
  • 功能说明:配置URI重写规则,该功能详细介绍请参见控制台配置说明配置访问URL改写规则
  • 功能ID(FunctionID/FuncId):43。
  • 参数说明:
    参数类型是否必选描述示例值
    regexString需要重写的URI,以“/”开头的URI,不含“http://”头及域名。支持PCRE正则表达式,例如:^/hello$。^/hello$
    replacementString目标URI,以“/”开头的URI,不含“http://”头及域名。/hello/test
    flagString指定CDN节点在URI改写完成之后执行的动作,取值:
    • redirect:如果请求的URI匹配了当前规则,该请求将被302重定向到目标URI。执行完当前规则后,当存在其他配置规则时,会继续匹配剩余规则。
    • break:如果请求的URI匹配了当前规则,请求将被改写为目标URI。执行完当前规则后,当存在其他配置规则时,将不再匹配剩余规则。
    redirect
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "flag",
                "argValue": "redirect"
            }, {
                "argName": "regex",
                "argValue": "^/hello$"
            }, {
                "argName": "replacement",
                "argValue": "/hello/test"
            }],
            "functionName": "host_redirect"
        }],
        "DomainNames": "example.com"
    }
self_defined_cachekey
  • 功能说明:配置自定义Cachekey,该功能详细介绍请参见控制台配置说明自定义Cachekey
  • 功能ID(FunctionID/FuncId):227。
  • 参数说明:
    参数类型是否必选描述示例值
    uriArray of String将请求中的源URI改写为目标URI,然后存为cachekey。
    • uri_to_rewrite用于指定源uri。
    • ai_uri_regex用于指定目标uri。
    [{"uri_to_rewrite":"/hello","ai_uri_regex":"/hello/test"}]
    argsArray of String请求中的参数进行增、删、改和保留操作,然后后存为cachekey,取值:
    • args_operation_type:指定参数操作类型,支持add(修改)、delete(删除)、modify(变更)和keep(保留)。
    • args:指定参数操作对应的参数值。
    [{"args":"test=123","args_operation_type":"add"}]
    headersString用于增加多个http header,并且拼接到cachekey中,多个http header之间使用空格分隔。example
    variableArray of String自定义变量,可使用正则表达式从请求URL中的请求参数、http header、cookie和uri中截取出任意字段,然后拼接到cachekey中。[]
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "uri",
                "argValue": [{
                    "uri_to_rewrite": "/hello",
                    "ai_uri_regex": "/hello/test"
                }]
            }, {
                "argName": "args",
                "argValue": [{
                    "args": "test=123",
                    "args_operation_type": "add"
                }]
            }, {
                "argName": "headers",
                "argValue": ""
            }, {
                "argName": "variable",
                "argValue": []
            }],
            "functionName": "self_defined_cachekey"
        }],
        "DomainNames": "example.com"
    }
rewrite_host
  • 功能说明:共享缓存。
  • 功能ID(FunctionID/FuncId):54。
  • 参数说明:
    参数类型是否必选描述示例值
    share_hostString可以与当前域名共享缓存的目标域名。该配置不修改用户请求的回源HOST,只是在查询缓存资源的时候,使用share_host值来生成查询用的cachekey。example.com
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "share_host",
                "argValue": "example.com"
            }],
            "functionName": "rewrite_host"
        }],
        "DomainNames": "example.com"
    }

HTTPS配置

https_option
  • 功能说明:配置HTTPS基础参数,该功能详细介绍请参见控制台配置说明配置HTTPS证书配置HTTP/2配置OCSP Stapling
  • 功能ID(FunctionID/FuncId):78。
  • 参数说明:
    参数类型是否必选描述示例值
    http2String是否开启HTTP2开关:
    • on:开启。
    • off:关闭。
    on
    ocsp_staplingString是否开启OCSP Stapling开关:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "http2",
                "argValue": "on"
            }, {
                "argName": "ocsp_stapling",
                "argValue": "on"
            }],
            "functionName": "https_option"
        }],
        "DomainNames": "example.com"
    }
http_force
  • 功能说明:配置强制HTTP跳转,该功能详细介绍请参见控制台配置说明配置强制跳转
  • 功能冲突说明:强制HTTP跳转功能与强制HTTPS跳转功能(功能函数:https_force,功能ID:44)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):45。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启强制HTTP跳转:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "http_force"
        }],
        "DomainNames": "example.com"
    }
https_force
  • 功能说明:配置强制HTTPS跳转,该功能详细介绍请参见控制台配置说明配置强制跳转
  • 功能冲突说明:强制HTTPS跳转功能与强制HTTP跳转功能(功能函数:http_force,功能ID:45)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):44。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启强制HTTPS跳转:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "https_force"
        }],
        "DomainNames": "example.com"
    }
https_tls_version
  • 功能说明:配置TLS协议版本,该功能详细介绍请参见控制台配置说明配置TLS版本控制
  • 功能ID(FunctionID/FuncId):110。
  • 参数说明:
    参数类型是否必选描述示例值
    tls10String是否开启TLSv1.0:
    • on(默认):开启。
    • off:关闭。
    on
    tls11String是否开启TLSv1.1:
    • on(默认):开启。
    • off:关闭。
    on
    tls12String是否开启TLSv1.2:
    • on(默认):开启。
    • off:关闭。
    on
    tls13String是否开启TLSv1.3:
    • on(默认):开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "tls10",
                "argValue": "on"
            }, {
                "argName": "tls11",
                "argValue": "on"
            }, {
                "argName": "tls12",
                "argValue": "on"
            }, {
                "argName": "tls13",
                "argValue": "on"
            }, ],
            "functionName": "https_tls_version"
        }],
        "DomainNames": "example.com"
    }
HSTS
  • 功能说明:配置HSTS,该功能详细介绍请参见控制台配置说明配置HSTS
  • 功能ID(FunctionID/FuncId):112。
  • 参数说明:
    参数类型是否必选描述示例值
    enabledString是否开启HSTS:
    • on:开启。
    • off:关闭。
    on
    https_hsts_max_ageInteger过期时间,单位:秒。
    说明 建议填写5184000s(60天)。
    5184000
    https_hsts_include_subdomainsString配置HSTS头部是否包含子域名参数,取值on或者off。
    说明 开启前请确保该加速域名的所有子域名都已开启HTTPS,否则会导致子域名自动跳转到HTTPS后无法访问。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enabled",
                "argValue": "on"
            }, {
                "argName": "https_hsts_max_age",
                "argValue": "5184000"
            }, {
                "argName": "https_hsts_include_subdomains",
                "argValue": "off"
            }],
            "functionName": "HSTS"
        }],
        "DomainNames": "example.com"
    }

访问控制

referer_white_list_set
  • 功能说明:配置Referer白名单,该功能详细介绍请参见控制台配置说明配置Referer防盗链
  • 功能冲突说明:Referer白名单功能与Referer黑名单功能(功能函数:referer_black_list_set,功能ID:5)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):1。
  • 参数说明:
    参数类型是否必选描述示例值
    refer_domain_allow_listString白名单列表,多个用半角逗号(,)分隔。example.aliyundoc.com,demo.aliyundoc.com
    allow_emptyString是否允许空referer字段访问CDN资源。取值:
    • on:允许。
    • off(默认值):禁止。
    off
    redirect_urlString重定向URL,即用户请求中的referer信息未匹配上白名单列表,被拦截后不会再返回403,而是会返回302加Location头,该项为Location头的值,以 http:// 或者 https:// 开头。http://www.example.com
    disable_astString使用精确匹配模式,控制“白名单列表”项中填写的域名是否为精确匹配。如果勾选(on)则精确匹配域名。
    • 取值为on时:
      • 支持精确匹配
        • 白名单列表填写example.com,匹配example.com
        • 白名单列表填写a*b.example.com,匹配a<任意字符>b.example.com
      • 不支持后缀匹配
    • 取值为off(默认值)时:
      • 不支持精确匹配
      • 支持后缀匹配
        • 白名单列表填写example.com,匹配example.com<任意字符>.example.com
        • 白名单列表填写a*b.example.com,匹配a<任意字符>b.example.com<任意字符>.a<任意字符>b.example.com
    off
    ignore_schemeString开启忽略scheme。开启后,如果用户请求中的referer没有带上HTTP或HTTPS协议头部,则依然当做有效referer进行处理。示例:
    • 取值为on时,referer格式如下:

      referer: www.example.com

    • 取值为off(默认值)时,referer格式如下:

      referer: https://www.example.com

    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "allow_empty",
                "argValue": "off"
            }, {
                "argName": "refer_domain_allow_list",
                "argValue": "example.aliyundoc.com,demo.aliyundoc.com"
            }],
            "functionName": "referer_white_list_set"
        }],
        "DomainNames": "example.com"
    }
referer_black_list_set
  • 功能说明:配置Referer黑名单,该功能详细介绍请参见控制台配置说明配置Referer防盗链
  • 功能冲突说明:Referer黑名单功能与Referer白名单功能(功能函数:referer_white_list_set,功能ID:1)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):5。
  • 参数说明:
    参数类型是否必选描述示例值
    refer_domain_deny_listString黑名单列表,多个用半角逗号(,)分隔。example.aliyundoc.com,demo.aliyundoc.com
    allow_emptyString是否允许空referer字段访问CDN资源:
    • on:允许。
    • off:禁止。
    off
    redirect_urlString重定向URL,即用户请求中的referer信息匹配上黑名单列表,被拦截后不会再返回403,而是会返回302加Location头,该项为Location头的值,以 http:// 或者 https:// 开头。http://www.example.com
    disable_astString使用精确匹配模式,控制“黑名单列表”项中填写的域名是否为精确匹配。如果勾选(on)则精确匹配域名。
    • 取值为on时:
      • 支持精确匹配
        • 黑名单列表填写example.com,匹配example.com
        • 黑名单列表填写a*b.example.com,匹配a<任意字符>b.example.com
      • 不支持后缀匹配
    • 取值为off(默认值)时:
      • 不支持精确匹配
      • 支持后缀匹配
        • 黑名单列表填写example.com,匹配example.com<任意字符>.example.com
        • 黑名单列表填写a*b.example.com,匹配a<任意字符>b.example.com<任意字符>.a<任意字符>b.example.com
    off
    ignore_schemeString开启忽略scheme。开启后,如果用户请求中的referer没有带上HTTP或HTTPS协议头部,则依然当做有效referer进行处理。示例:
    • 取值为on时,referer格式如下:

      referer: www.example.com

    • 取值为off(默认值)时,referer格式如下:

      referer: https://www.example.com

    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "allow_empty",
                "argValue": "off"
            }, {
                "argName": "refer_domain_deny_list",
                "argValue": "example.aliyundoc.com,demo.aliyundoc.com"
            }],
            "functionName": "referer_black_list_set"
        }],
        "DomainNames": "example.com"
    }
aliauth
  • 功能说明:配置URL鉴权,该功能详细介绍请参见控制台配置说明配置URL鉴权
  • 功能ID(FunctionID/FuncId):25。
  • 参数说明:
    参数类型是否必选描述示例值
    auth_m3u8String开启m3u8内容改写,对m3u8里面的ts补齐对应的鉴权,可以避免ts的访问鉴权失败,取值on(默认值)和off。on
    auth_typeString鉴权类型。取值:
    • no_auth:无鉴权。
    • type_a:鉴权方式A。
    • type_b:鉴权方式B。
    • type_c:鉴权方式C。
    type_a
    auth_key1String鉴权key1(16~128个字符支持大写字母、小写字母和数字)。1234567890123456789
    auth_key2String鉴权key2(16~128个字符支持大写字母、小写字母和数字)。1234567890123456789
    ali_auth_deltaInteger鉴权URL有效时长,默认1800,单位:秒。1800
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "auth_type",
                "argValue": "type_a"
            }, {
                "argName": "auth_key1",
                "argValue": "1234567890123456789"
            }, {
                "argName": "auth_key2",
                "argValue": "1234567890123456789"
            }, {
                "argName": "ali_auth_delta",
                "argValue": 1800
            }],
            "functionName": "aliauth"
        }],
        "domainNames": "example.com"
    }
cdn_remote_auth
  • 功能说明:配置远程鉴权,该功能详细介绍请参见控制台配置说明配置远程鉴权
  • 功能ID(FunctionID/FuncId):258。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启远程鉴权:
    • on:开启。
    • off:关闭。
    on
    remote_auth_addrString鉴权服务器地址。格式:https://cdn.aliyun.com/auth或者http://10.10.10.10/authhttps://example.aliyundoc.com/auth
    remote_auth_methodString请求方法,支持get/post/head。get
    remote_auth_typeString鉴权文件类型。all表示所有类型,多个文件类型用竖线分隔、区分大小写(jpg不等同于JPG)。all
    remote_auth_reserve_argsString保留参数设置,all表示保留所有参数,多个参数用竖线分隔、ali_delete_all_args表示删除所有URL参数、区分大小写(key不等同于KEY)。all
    remote_auth_custom_argsString添加自定义参数,多个参数用竖线分隔、区分大小写(key不等同于KEY)。
    remote_auth_reserve_headerString保留请求头设置:
    • all:保留所有请求头,多个请求头用竖线分隔。
    • ali_delete_all_headers:删除所有请求头参数、不区分大小写(http_remote_addr等同于HTTP_Remote_Addr)。
    all
    remote_auth_custom_headerString添加自定义请求头,多个请求头用竖线分隔、不区分大小写(http_remote_addr等同于HTTP_Remote_Addr)。
    remote_auth_success_codeInteger鉴权成功状态码。例如:200,鉴权服务器传给CDN的鉴权结果。200
    remote_auth_fail_codeInteger鉴权失败状态码。例如:403,鉴权服务器传给CDN的鉴权结果。403
    remote_auth_fail_resp_codeInteger鉴权失败CDN响应状态码。例如:403,CDN传给用户的状态码。403
    remote_auth_timeoutInteger鉴权超时配置,单位ms,最大值为3000。500
    remote_auth_timeout_actionString鉴权超时行为,取值:
    • pass:CDN将直接通过用户请求。
    • reject,CDN将响应上面配置的“鉴权失败CDN响应状态码”给用户。
    pass
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "remote_auth_addr",
                "argValue": "https://example.aliyundoc.com/auth"
            }, {
                "argName": "remote_auth_method",
                "argValue": "get"
            }, {
                "argName": "remote_auth_type",
                "argValue": "all"
            }, {
                "argName": "remote_auth_reserve_args",
                "argValue": "all"
            }, {
                "argName": "remote_auth_custom_args",
                "argValue": ""
            }, {
                "argName": "remote_auth_reserve_header",
                "argValue": "all"
            }, {
                "argName": "remote_auth_custom_header",
                "argValue": ""
            }, {
                "argName": "remote_auth_success_code",
                "argValue": "200"
            }, {
                "argName": "remote_auth_fail_code",
                "argValue": "403"
            }, {
                "argName": "remote_auth_fail_resp_code",
                "argValue": "403"
            }, {
                "argName": "remote_auth_timeout",
                "argValue": 500
            }, {
                "argName": "remote_auth_timeout_action",
                "argValue": "pass"
            }],
            "functionName": "cdn_remote_auth"
        }],
        "DomainNames": "example.com"
    }
ip_allow_list_set
  • 功能说明:配置IP白名单,该功能详细介绍请参见控制台配置说明配置IP黑白名单
  • 功能冲突说明:IP白名单功能与IP黑名单功能(功能函数:ip_black_list_set,功能ID:13)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):69。
  • 参数说明:
    参数类型是否必选描述示例值
    ip_listStringIP列表,多个用半角逗号(,)分隔。192.168.0.1/24
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ip_list",
                "argValue": "192.168.0.1/24"
            }],
            "functionName": "ip_allow_list_set"
        }],
        "DomainNames": "example.com"
    }
ip_black_list_set
  • 功能说明:配置IP黑名单,该功能详细介绍请参见控制台配置说明配置IP黑白名单
  • 功能冲突说明:IP黑名单功能与IP白名单功能(功能函数:ip_allow_list_set,功能ID:69)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):13。
  • 参数说明:
    参数类型是否必选描述示例值
    ip_listStringIP列表,多个用半角逗号(,)分隔。192.168.0.1
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ip_list",
                "argValue": "192.168.0.1"
            }],
            "functionName": "ip_black_list_set"
        }],
        "DomainNames": "example.com"
    }
ali_ua
  • 功能说明:配置User-Agent限制访问,该功能详细介绍请参见控制台配置说明配置UA黑白名单
  • 功能ID(FunctionID/FuncId):58。
  • 参数说明:
    参数类型是否必选描述示例值
    uaString填写User-Agent,支持通配符号*(匹配任意字符串)和多个值(多个值用|分割。例如:*curl*|*IE*|*chrome*|*firefox*。)*curl*|*IE*|*chrome*|*firefox*
    typeString名单类型,取值:
    • black:黑名单。
    • white:白名单。
    说明 黑、白名单互斥,同一时间只支持其中一种方式生效。
    black
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ua",
                "argValue": "*curl*|*IE*|*chrome*|*firefox*"
            }, {
                "argName": "type",
                "argValue": "black"
            }],
            "functionName": "ali_ua"
        }],
        "DomainNames": "example.com"
    }

性能优化

tesla
  • 功能说明:配置页面优化加速,该功能详细介绍请参见控制台配置说明页面优化
  • 功能ID(FunctionID/FuncId):16。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启页面优化加速:
    • on:开启。
    • off:关闭。
    on
    trim_jsString是否优化HTML中内嵌的js代码:
    • on:开启。
    • off(默认):关闭。
    off
    trim_cssString是否优化HTML中内嵌的css代码:
    • on:开启。
    • off(默认):关闭。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "trim_css",
                "argValue": "off"
            }, {
                "argName": "trim_js",
                "argValue": "off"
            }],
            "functionName": "tesla"
        }],
        "DomainNames": "example.com"
    }
gzip
  • 功能说明:页面Gzip优化,该功能详细介绍请参见控制台配置说明Gzip压缩
  • 功能ID(FunctionID/FuncId):35。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启页面Gzip优化:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "gzip"
        }],
        "DomainNames": "example.com"
    }
brotli
  • 功能说明:配置页面Brotli压缩,该功能详细介绍请参见控制台配置说明Brotli压缩
  • 功能ID(FunctionID/FuncId):97。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启页面Brotli压缩:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "brotli"
        }],
        "DomainNames": "example.com"
    }
set_hashkey_args
  • 功能说明:配置忽略URL参数(保留),该功能详细介绍请参见控制台配置说明忽略参数
  • 功能冲突说明:忽略URL参数(保留)功能与忽略URL参数(删除)功能(功能函数:ali_remove_args,功能ID:75)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):19。
  • 参数说明:
    参数类型是否必选描述示例值
    hashkey_argsString保留参数列表,多个用半角逗号(,)分隔,最多支持填写10个。key1,key2
    disableString是否忽略所有参数:
    • on:忽略所有参数,除了添加参数功能仍能生效以外,删除参数、仅保留、修改参数功能都将失效。
    • off(默认):关闭忽略参数功能,保留参数、添加参数、删除参数仍会生效。
    说明 缓存hashkey忽略所有参数,优先级低于保留缓存参数列表功能。
    on
    keep_oss_argsString是否保留回源参数:
    • on:回源保留所有参数。
    • off:回源携带的参数与缓存hashkey的参数一致。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "hashkey_args",
                "argValue": ""
            }, {
                "argName": "keep_oss_args",
                "argValue": "on"
            }, {
                "argName": "disable",
                "argValue": "on"
            }],
            "functionName": "set_hashkey_args"
        }],
        "DomainNames": "example.com"
    }
ali_remove_args
  • 功能说明:配置忽略URL参数(删除),该功能详细介绍请参见控制台配置说明忽略参数
  • 功能冲突说明:忽略URL参数(删除)功能与忽略URL参数(保留)功能(功能函数:set_hashkey_args,功能ID:69)存在冲突,只能二选其一。如果已经配置了其中一个功能(注意:如果功能函数存在功能开关配置参数,在参数被置为off的情况下,也属于已存在配置),则必须删除已经添加的功能配置(您可以通过调用DeleteSpecificConfig接口来删除域名的指定配置),然后才能给另外一个功能添加配置。
  • 功能ID(FunctionID/FuncId):75。
  • 参数说明:
    参数类型是否必选描述示例值
    ali_remove_argsString删除指定的参数,多个参数之间用空格隔开。
    说明 剩余参数将作为hashkey中URL args部分。
    test
    keep_oss_argsString回源是否保留参数:
    • on:回源保留所有参数。
    • off:回源携带的参数与缓存hashkey的参数一致。
    off
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ali_remove_args",
                "argValue": "test"
            }, {
                "argName": "keep_oss_args",
                "argValue": "off"
            }],
            "functionName": "ali_remove_args"
        }],
        "DomainNames": "example.com"
    }
image_transform
  • 功能说明:配置CDN图片转换,该功能详细介绍请参见控制台配置说明图像处理概述
  • 功能ID(FunctionID/FuncId):239。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启图片转换:
    • on:开启。
    • off:关闭。
    on
    filetypeString支持转码的图片格式,以竖线分割符号分隔。jpg|jpeg|png
    webpString是否开启自适应转换WEBP:
    • on:开启。
    • off:关闭。
    on
    orientString是否开启图片自旋转:
    • on:开启。
    • off:关闭。
    说明 只对有自旋转属性的图片生效。
    on
    slimInteger图片瘦身,设置瘦身的百分比,可配置范围是[0,100]。在不改变分辨率、尺寸、格式的前提下,缩小图片质量达到省流目的。10
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "filetype",
                "argValue": "jpg|jpeg|png"
            }, {
                "argName": "webp",
                "argValue": "on"
            }, {
                "argName": "orient",
                "argValue": "on"
            }, {
                "argName": "slim",
                "argValue": ""
            }, {
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "image_transform"
        }],
        "DomainNames": "example.com"
    }

视频相关

range
  • 功能说明:配置range回源,该功能详细介绍请参见控制台配置说明配置Range回源
  • 功能ID(FunctionID/FuncId):31。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启range回源:
    • on:开启。
    • off:关闭。
    • force:强制开启。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "range"
        }],
        "DomainNames": "example.com"
    }
video_seek
  • 功能说明:配置视频拖拽播放,该功能详细介绍请参见控制台配置说明配置拖拽播放
  • 功能ID(FunctionID/FuncId):30。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启视频拖拽播放:
    • on:开启。
    • off:关闭。
    on
    flv_seek_by_timeString是否开启FLV按时间拖拽:
    • on:开启。
    • off:关闭。
    on
    mp4_seek_startString自定义MP4开始参数。mp4starttime
    mp4_seek_endString自定义MP4结束参数。mp4endtime
    flv_seek_startString自定义FLV开始参数。flvstarttime
    flv_seek_endString自定义FLV结束参数。flvendtime
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "video_seek"
        }],
        "DomainNames": "example.com"
    }
ali_video_split
  • 功能说明:配置听视频,该功能详细介绍请参见控制台配置说明配置听视频
  • 功能ID(FunctionID/FuncId):204。
  • 参数说明:
    参数类型是否必选描述示例值
    enabledString是否开启听视频:
    • on:开启。
    • off:关闭。
    on
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "ali_video_split"
        }],
        "DomainNames": "example.com"
    }
ali_video_preview
  • 功能说明:配置视频试看,该功能详细介绍请参见控制台配置说明配置音视频试看
  • 功能ID(FunctionID/FuncId):205。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启视频试看:
    • on:开启。
    • off:关闭。
    说明 支持TS、MP3文件格式,FLV和MP4使用拖拽功能实现。
    on
    ali_video_preview_argumentString自定义试看参数名,试看参数值的单位必须是秒。fds
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "ali_video_preview_argument",
                "argValue": "fds"
            }],
            "functionName": "ali_video_preview"
        }],
        "DomainNames": "example.com"
    }
hls_token_rewrite
  • 功能说明:配置M3U8标准加密改写,该功能详细介绍请参见控制台配置说明配置M3U8标准加密改写
  • 功能ID(FunctionID/FuncId):253。
  • 参数说明:
    参数类型是否必选描述示例值
    enableString是否开启M3U8标准加密改写:
    • on:开启。
    • off:关闭。
    on
    hls_token_arg_nameString自定义hls token的参数名称。如果不设置,使用MtsHlsUriToken作为自定义参数名。example
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "hls_token_rewrite"
        }],
        "DomainNames": "example.com",
    }

安全配置

tmd_signature
  • 功能说明:配置频次控制自定义规则,该功能详细介绍请参见控制台配置说明配置频次控制
  • 功能ID(FunctionID/FuncId):96。
ddos_domain
  • 功能说明:DDoS防护调度,该功能详细介绍请参见控制台配置说明配置CDN联动DDoS高防
  • 功能ID(FunctionID/FuncId):209。
ali_location
  • 功能说明:配置区域封禁,该功能详细介绍请参见控制台配置说明区域封禁
  • 功能ID(FunctionID/FuncId):57。
allowed_crawlers
  • 功能说明:配置合法爬虫,该功能详细介绍请参见控制台配置说明配置CDN WAF
  • 功能ID(FunctionID/FuncId):270。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。
threat_intelligence
  • 功能说明:配置威胁情报,该功能详细介绍请参见控制台配置说明配置CDN WAF
  • 功能ID(FunctionID/FuncId):271。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。
intelligent_algorithm
  • 功能说明:配置AI智能防护,该功能详细介绍请参见控制台配置说明配置CDN WAF
  • 功能ID(FunctionID/FuncId):272。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。

流量限制

limit_rate
  • 功能说明:配置单请求限速。
  • 功能ID(FunctionID/FuncId):72。
  • 参数说明:

    可以仅配置ali_limit_rate,也可以配置根据用户请求URL中携带的参数来限速,还可以设定限速开始和结束时间。

    根据用户请求URL中携带的参数来限速:通过traffic_limit_arg和traffic_limit_unit这两个参数的组合来实现。

    设定限速开始和结束时间:通过ali_limit_start_hour和ali_limit_end_hour这两个参数的组合来实现。

    参数类型是否必选描述示例值
    ali_limit_rateString指定单请求限速的具体速率(例如:200 KByte/s、1 MByte/s等),支持“数值+字母单位”的参数值(字母单位支持k、m),单位Byte/s。

    最小只能设定为100k,低于100k的值将会按100k来执行。

    • 1m:表示单请求限速为1 MByte/s
    • 100k:表示单请求限速为100 KByte/s
    ali_limit_rate_afterString不限速大小,在发送了多少数据之后才开始限速。支持“数值+字母单位”的参数值(字母单位支持k、m),单位Byte。1000
    traffic_limit_argString限速参数名称,根据URL中提取的arg进行限速,例如:rate。

    当请求中不带限速参数时,按默认限速值ali_limit_rate限速,如果想达到请求中没限速参数时不限速的效果,则把默认限速值ali_limit_rate配置为0k。

    rate
    traffic_limit_unitString限速参数traffic_limit_arg的单位,支持m(MByte/s)、k(KByte/s)。限速参数单位设定为m的情况下,当用户请求URL中携带的rate=1时,实际限速值为1MByte/s。

    最小只能设定为100k,低于100k的值将会按100k来执行。

    m
    ali_limit_start_hourInteger限速开始时间,取值范围[0,24],小于限速结束时间,默认值为0。
    说明 表示时间点,24小时制的整点,例如:0表示00:00:00,24表示24:00:00。
    20
    ali_limit_end_hourInteger限速结束时间,取值范围[0,24],大于限速开始时间,默认值为24。23
  • 配置示例一:设置单请求限速为1 MByte/s。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ali_limit_rate",
                "argValue": "1m"
            }],
            "functionName": "limit_rate"
        }],
        "DomainNames": "example.com"
    }
  • 配置示例二:默认情况下,单请求限速为1 MByte/s,如果用户请求URL中携带了参数rate,则会按照参数rate的实际数值来执行限速。例如:用户请求中携带了参赛rate=200,则实际将会被限速为200 KByte/s。
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "ali_limit_rate",
                "argValue": "1m"
            },{
                "argName": "traffic_limit_arg",
                "argValue": "rate"
            },{
                "argName": "traffic_limit_unit",
                "argValue": "k"
            }],
            "functionName": "limit_rate"
        }],
        "DomainNames": "example.com"
    }

EdgeScript边缘脚本/边缘函数

edge_function
  • 功能说明:边缘脚本EdgeScript,该功能详细介绍请参见控制台配置说明EdgeScript概述
  • 功能ID(FunctionID/FuncId):180。
  • 参数说明:
    参数类型是否必选描述示例值
    ruleStringDSL规则。if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}
    priInteger优先级,取值:[0,999],数字越小优先级越高。
    说明 头部执行和尾部执行的优先级互相独立。
    0
    enableString本条规则是否生效:
    • on:生效。
    • off:无效。
    on
    nameString规则名称,仅支持英文字母和下划线(_)。test
    posString规则执行位置,取值:
    • head(默认值):请求处理流程头部介入。
    • foot:请求处理流程尾部介入。
    head
    brkString中断执行,取值:
    • on:命中本条规则后,当前执行位置剩余规则均跳过。
    • off(默认值):命中本条规则后,还会执行剩余规则。
    off
    optionString扩展字段。
    grammarString规则语法,取值:es2(默认值)和js。/
    jsmodeStringJS执行模式,取值:
    • redirect:拦截模式。
    • bypass(默认值):旁路模式。
    /
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "name",
                "argValue": "test"
            }, {
                "argName": "rule",
                "argValue": "if eq($uri, '/') {\n    rewrite('https://example.com/index.html', 'redirect')\n}"
            }, {
                "argName": "pri",
                "argValue": "0"
            }, {
                "argName": "pos",
                "argValue": "head"
            }, {
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "brk",
                "argValue": "off"
            }, {
                "argName": "option",
                "argValue": ""
            }],
            "functionName": "edge_function"
        }],
        "DomainName": "example.com"
    }

边缘程序

edgeroutine
  • 功能说明:边缘程序,该功能详细介绍请参见控制台配置说明什么是边缘程序
  • 功能ID(FunctionID/FuncId):275。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。

规则引擎

condition
  • 功能说明:规则引擎,该功能能够使用图形化的方式来配置各种条件规则。条件规则支持对用户请求中携带的各种参数信息进行识别,以此来决定某个配置是否对该请求生效,可用于更加灵活、更加精确地控制CDN的各种配置策略的执行效果。该功能详细介绍请参见控制台配置说明规则引擎
  • 功能ID(FunctionID/FuncId):250。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。
  • 参数说明:
    参数类型是否必选描述示例值
    ruleArray规则条件的具体内容,包括名称、状态、逻辑判断、条件表达式。规则条件内容:
    {"match":{"logic":"and","criteria":[{"matchType":"clientipVer","matchObject":"CONNECTING_IP","matchOperator":"equals","matchValue":"v6","negate":false}]},"name":"example","status":"enable"}
    实现效果:
    • 规则名称:example
    • 状态:enable
    • 逻辑判断:and
    • 条件表达式:客户端建联IP的协议版本等于v6
  • 配置示例:
    {
        "Functions": [{
            "functionArgs": [{
                "argName": "rule",
                "argValue": "{
                                "match":{
                                    "logic":"and",
                                    "criteria":[
                                         {
                                              "matchType":"clientipVer",
                                              "matchObject":"CONNECTING_IP",
                                              "matchOperator":"equals",
                                              "matchValue":"v6",
                                              "negate":false
                                         }
                                     ]
                             },
                             "name":"example",
                             "status":"enable"
                             }"
            }],
            "functionName": "condition"
        }],
        "DomainNames": "example.com"
    }

QUIC

quic
  • 功能说明:QUIC基础参数,该功能详细介绍请参见控制台配置说明配置QUIC协议
  • 功能ID(FunctionID/FuncId):281。
  • 该功能需要申请再开通,您需要提交工单申请开通该功能。