全部產品
Search
文件中心

CDN:網域名稱配置功能函數

更新時間:Jul 27, 2024

調用BatchSetCdnDomainConfig、SetCdnDomainStagingConfig可大量設定網域名稱功能,本文為您介紹該API可以配置哪些功能及功能參數用法。

說明

基本資料

ipv6

  • 功能說明:IPv6訪問配置,該功能詳細介紹請參見控制台配置說明IPv6配置

  • 功能ID(FunctionID/FuncId):194。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    switch

    String

    是否開啟IPv6訪問:

    • on:開啟。

    • off:關閉。

    on

    region

    String

    開啟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

  • 功能ID(FunctionID/FuncId):18。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    domain_name

    String

    回源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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟回源協議:

    • on:開啟。

    • off:關閉。

    on

    scheme_origin

    String

    回源類型,取值:

    • http:CDN以HTTP協議回源。

    • https:CDN以HTTPS協議回源。

    • follow(跟隨):用戶端以HTTP或者HTTPS協議請求CDN,CDN跟隨用戶端的協議請求來源站點。

    說明

    scheme_origin不配置時,預設取值為follow。

    follow

    scheme_origin_port

    String

    回源自訂連接埠,需要與scheme_origin參數搭配使用,取值:

    • scheme_origin取值為http時,只需要配置一個HTTP協議的回源連接埠,例如:80。

    • scheme_origin取值為https時,只需要配置一個HTTPS協議的回源連接埠,例如:443。

    • scheme_origin取值為follow時,需要同時配置HTTP協議和HTTPS協議的回源連接埠,中間用半形冒號(:)分隔,例如:80:443。

    80:443

  • 配置樣本一: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_auth

    String

    是否開啟私人Bucket回源:

    • on:開啟。

    • off:關閉。

    功能開啟以後,系統會自動設定STS安全性權杖,配置更簡單,但是僅支援CDN網域名稱回源到同一個阿里雲帳號下的OSS私人Bucket。關於STS安全性權杖更多資訊,請參見什麼是STS

    on

    perm_private_oss_tbl

    String

    永久安全性權杖配置,配置格式是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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    host

    String

    OSS Bucket 的完整地址。

    example.oss-cn-hangzhou.aliyuncs.com

    key

    String

    永久安全性權杖配置,配置格式是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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enabled

    String

    是否開啟回源SNI功能:

    • on:開啟。

    • off:關閉。

    on

    https_origin_sni

    String

    回源請求攜帶的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_timeout

    Integer

    請求逾時時間,單位:秒。

    說明

    建議設定時間小於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_type

    String

    變數類型,取值:

    • header:使用者請求中攜帶的header(request header)。

    • arg:使用者請求URL中攜帶的參數(query string parameter)。

    • uri:使用者請求URL中攜帶的路徑(path)。

    • cookie:使用者請求中攜帶的cookie(request cookie)。

    uri

    variable

    String

    變數名稱。

    說明

    variable_type=uri的情況下,variable只能固定=uri。

    uri

    conditions

    String

    條件,取值:

    • ==:表示“等於”。

    • !=:表示“不等於”。

    ==

    value

    String

    變數的取值。

    /image

    origin

    String

    回源查詢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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟回源302跟隨:

    • on:開啟。

    • off:關閉。

    on

    max_tries

    Integer

    302跟隨次數上限。

    • 預設值:2。

    • 取值範圍:[1,5]。

    說明

    回源次數-1(次)=302跟隨次數,即預設的回源次數上限為3,可配置範圍是[2,6]。

    2

    retain_args

    String

    302跟隨時是否保留原請求參數返回目標源:

    • on:保留。

    • off(預設):不保留。

    off

    retain_header

    String

    302跟隨時是否保留原要求標頭回目標源:

    • on:保留。

    • off(預設):不保留。

    off

    response_header

    String

    302跟隨回應標頭,表示來源站點給CDN的302跟隨回應標頭的名稱,該回應標頭名稱預設為Location。

    X-Alicdn-Redirect

    retain_host

    String

    302跟隨保留回源網域名稱,當開啟時,表示CDN在302跟隨時保留回源網域名稱,只在跟隨到目標網域名稱時生效。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    modify_host

    String

    302跟隨修改回源網域名稱,表示CDN在302跟隨時修改回源網域名稱,只在跟隨到目標網域名稱時生效。預設不修改回源網域名稱。

    example.com

    cache

    String

    302跟隨緩衝跟隨結果,當開啟時,表示CDN在302跟隨時緩衝同URL的跟隨結果,提升CDN的響應效能。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    expired_time

    Integer

    302跟隨緩衝跟隨結果的逾時時間,表示CDN在302跟隨時緩衝同URL的跟隨結果的逾時時間,需要配合緩衝功能一起使用,單位秒,預設:3600秒

    7200

    follow_origin_host

    String

    302跟隨回源host使用來源站點網域名稱,當開啟時,表示CDN會使用來源站點網域名稱作為回源host(即使主備切換也會使用最新的來源站點網域名稱)。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    follow_5xx_retry_origin

    String

    來源站點主備切換,當開啟時,表示CDN如果收到來源站點響應的5xx狀態代碼,會切換到下一個可用的來源站點。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "max_tries",
                "argValue": 2
            }, {
                "argName": "retain_args",
                "argValue": "off"
            }, {
                "argName": "retain_header",
                "argValue": "off"
    }, {
                "argName": "response_header",
                "argValue": "X-Alicdn-Redirect"
    }, {
                "argName": "retain_header",
                "argValue": "off"
    }, {
                "argName": "modify_host",
                "argValue": "example.com"
    }, {
                "argName": "cache",
                "argValue": "off"
    }, {
                "argName": "expired_time",
                "argValue": "7200"
    }, {
                "argName": "follow_origin_host",
                "argValue": "off"
    }, {
                "argName": "follow_5xx_retry_origin",
                "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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    key

    String

    回源頭名稱。

    Accept-Encoding

    value

    String

    回源頭的值。如果要刪除某個回源頭,設定回源頭的值為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_type

    String

    要求標頭操作,取值:

    • add:添加。

    • delete:刪除。

    • modify:變更。

    • rewrite:替換。

    add

    header_name

    String

    要求標頭名稱。

    Accept-Encoding

    header_value

    String

    要求標頭值。一個要求標頭參數中可以配置多個值,多個值用英文逗號(,)分隔。

    gzip

    duplicate

    String

    是否允許重複添加名稱相同的要求標頭。當header_operation_type使用add時(即執行增加操作),需要設定是否允許重複:

    • on:允許。

    • off:不允許。

    off

    header_source

    String

    尋找需要替換的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數,取值支援Regex。

    value1

    header_destination

    String

    替換後的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數。

    value123

    match_all

    String

    設定匹配模式。當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_type

    String

    回應標頭操作,取值:

    • add:添加。

    • delete:刪除。

    • modify:變更。

    • rewrite:替換。

    add

    header_name

    String

    回應標頭名稱。

    Cache-Control

    header_value

    String

    回應標頭值。一個回應標頭參數中可以配置多個值,多個值用英文逗號(,)分隔。

    no-cache

    duplicate

    String

    是否允許重複添加名稱相同的回應標頭。當header_operation_type使用add時(即執行增加操作),需要設定是否允許重複:

    • on:允許重複。

    • off:不允許重複。

    off

    header_source

    String

    尋找需要替換的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數,取值支援Regex。

    value1

    header_destination

    String

    替換後的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數。

    value123

    match_all

    String

    匹配模式。當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_url

    String

    被重寫的URI。

    ^/hello$

    target_url

    String

    重寫的目標URI。

    /hello/test

    flag

    String

    改寫操作的執行規則,取值:

    • 空:執行完該條規則後,後續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_argument

    String

    刪除參數列表,多個參數用空格分隔。

    code1

    save_argument

    String

    保留參數列表,多個參數用空格隔開。僅保留列出的參數,添加參數和刪除參數仍會生效。

    ignore_all_argument

    String

    是否忽略所有參數:

    • on:忽略所有參數,除了添加參數功能仍能生效以外,刪除參數、僅保留、修改參數功能都將失效。

    • off(預設):關閉忽略所有參數功能,保留參數、添加參數、刪除參數仍會生效。

    on

    add_argument

    String

    添加參數,優先順序最高,多個參數用空格隔開。

    value=123

    modify_argument

    String

    修改參數,優先順序最低,若參數被刪除則不會保留,多個參數用空格隔開。

    value=321

    enable

    String

    是否開啟改寫回源參數:

    • 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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enabled

    String

    是否開啟Amazon S3鑒權Bucket:

    • l2:開啟。

    • off:關閉。

    l2

    bucketname

    String

    Amazon S3 Bucket名稱。

    /

    accesskey

    String

    AWS AccessKey。

    123456789

    secretkey

    String

    AWS SecretKey。

    12345678

    region

    String

    Amazon 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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enabled

    String

    是否啟用回源認證校正:

    • on:啟用。

    • off:關閉。

    on

    common_name_whitelist

    String

    認證白名單網域名稱列表,支援配置多個網域名稱,多個網域名稱之間使用英文逗號(,)分隔。匹配了這些白名單網域名稱的認證可以通過校正。

    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_host

    String

    回源查詢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

  • 功能ID(FunctionID/FuncId):242。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    origin

    String

    指定來源站點地址(也可以不指定來源站點地址,不指定來源站點地址時,參數origin的值設定為all,代表所有來源站點)。

    example.com

    host

    String

    指定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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    port

    String

    回源連接埠。

    說明

    當scheme設定為follow時,需填寫http:80|https:443這樣的格式。

    80

    scheme

    String

    回源協議:自訂回源協議(支援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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    origin

    String

    來源站點地址(也可以不指定來源站點地址,不指定來源站點地址的時候,參數origin的值設定為all)。

    example.com

    sni_host

    String

    sni host值:

    • 可以設定為固定值,例如:example.org

    • 跟隨來源站點地址作為sni,設定為ali_follow_origin

    • 跟隨回源host作為sni,設定為ali_follow_host

    example.org

    keepalive_sni

    String

    是否開啟長串連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_name

    String

    來源站點組名稱,支援小寫英文字母、數字和底線,最大長度不超過128個位元組。

    example_origin

    source_info

    String

    來源站點資訊,格式為來源站點地址_優先順序_權重_連接埠,不同參數值之間用底線分隔,多個來源站點之間用英文(,)逗號分隔。

    • 來源站點地址:支援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_times

    Integer

    回源重試次數。

    3

    retry_status_rule

    Integer

    回源重試狀態代碼,目前僅支援配置以下五種:4xx、5xx、404、404-or-5xx、4xx-or-5xx,配置其中一個即可。

    404-or-5xx

    failback_source

    String

    備份使用基礎源資訊,取值:

    • 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

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟IPv6回源功能。

    • on:開啟。

    • off:關閉。

    說明

    開啟IPv6回源功能後,CDN回源側將提供IPv6服務。

    • CDN節點和來源站點都具備可用的IPv6地址,則使用IPv6建連。

    • 以下情境使用IPv4建連:

      • CDN節點不具備可用的IPv6地址。

      • 來源站點不具備可用的IPv6地址。

      • CDN節點和來源站點都不具備可用的IPv6地址。

    on

    follow

    String

    是否開啟回源跟隨用戶端IP協議版本功能。

    • on:開啟。

    • off:關閉。

    說明

    開啟回源跟隨用戶端IP協議版本功能後,CDN回源將會跟隨用戶端請求使用的IP協議版本。

    • 用戶端請求使用IPv6,則CDN優先回源IPv6來源站點,如果沒有IPv6來源站點,則使用IPv4來源站點。

    • 用戶端請求使用IPv4,則CDN優先回源IPv4來源站點,如果沒有IPv4來源站點,則使用IPv6來源站點。

    on

    ipv6_v4_mix_used

    String

    是否開啟“來源站點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"
    }

cos_auth

  • 功能說明:配置騰訊雲COS雲端儲存的鑒權Bucket。

  • 功能ID(FunctionID/FuncId):288。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟騰訊雲COS雲端儲存鑒權Bucket:

    • on:開啟。

    • off:關閉。

    on

    cos_valid_period

    String

    鑒權簽名的有效時間,單位為秒,不填預設為3600秒。

    /

    cos_secret_id

    String

    騰訊雲的鑒權ID。

    123456789

    cos_secret_key

    String

    騰訊雲的鑒權密鑰。

    12345678

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "cos_secret_id",
                "argValue": "123456789"
            }, {
                "argName": "cos_secret_key",
                "argValue": "123456789"
            }],
            "functionName": "cos_auth"
        }],
        "DomainNames": "example.com"
    }

oss_auth

  • 功能說明:用於配置CDN回源OSS使用的鑒權bucket資訊。

  • 功能ID(FunctionID/FuncId):10。

  • 注意事項:在給加速網域名稱配置了OSS類型的來源站點地址之後,平台將會自動添加oss_auth配置,無需使用者手動添加,也請使用者注意不要誤刪該配置,否則會引起OSS來源站點無法實現對CDN回源流量的計費減免,在開啟OSS私人bucket鑒權的情況下,還會導致CDN回源OSS私人bucket鑒權失敗。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    oss_bucket_id

    String

    OSS bucket的公網網域名稱地址。

    cdn-test.oss-cn-hongkong.aliyuncs.com

    oss_pri_buckets

    String

    OSS bucket的公網網域名稱地址及其對應的bucket名稱。

    cdn-test.oss-cn-hongkong.aliyuncs.com|cdn-test

  • 配置樣本:

    {
        "Functions": [
                {
                  "ArgValue": "cdn-test.oss-cn-hongkong.aliyuncs.com",
                  "ArgName": "oss_bucket_id"
                },
                {
                  "ArgValue": "cdn-test.oss-cn-hongkong.aliyuncs.com|cdn-test",
                  "ArgName": "oss_pri_buckets"
                }
              ],
            "functionName": "oss_auth"
        }],
        "DomainNames": "example.com"
    }

緩衝配置

filetype_based_ttl_set

  • 功能說明:設定檔到期時間,該功能詳細介紹請參見控制台配置說明配置緩衝到期時間

  • 功能ID(FunctionID/FuncId):6。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    ttl

    Integer

    緩衝時間,單位為秒,取值範圍是1~99999999(3年多一些)。

    500000

    file_type

    String

    檔案類型,區分大小寫。多個檔案類型用半形逗號(,)分隔。例如jpg,txt。

    jpg

    weight

    Integer

    權重。取值:1~99。

    說明

    預設為1,數字越大優先順序越高。

    1

    swift_origin_cache_high

    String

    來源站點響應緩衝策略優先,當開啟時,表示在來源站點響應緩衝相關頭(比如Cache-Control、Pragma等)的時候,來源站點的緩衝策略優先生效。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_no_cache_low

    String

    忽略來源站點不緩衝回應標頭,當開啟時,表示忽略來源站點的以下回應標頭(均表示不緩衝)。

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragme: no-cache

    可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_follow_cachetime

    String

    用戶端跟隨CDN緩衝策略,當開啟時,表示將最終生效的CDN緩衝策略響應給用戶端。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "file_type",
                "argValue": "jpg"
            }, {
                "argName": "weight",
                "argValue": "1"
            }, {
                "argName": "ttl",
                "argValue": "500000"
            }, {
                "argName": "swift_origin_cache_high",
                "argValue": "off"
            }, {
                "argName": "swift_no_cache_low",
                "argValue": "off"
            }, {
                "argName": "swift_follow_cachetime",
                "argValue": "off"
            }],
            "functionName": "filetype_based_ttl_set"
        }],
        "DomainNames": "example.com"
    }
    

path_based_ttl_set

  • 功能說明:配置目錄到期時間,該功能詳細介紹請參見控制台配置說明配置緩衝到期時間

  • 功能ID(FunctionID/FuncId):7。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    ttl

    Integer

    緩衝時間,單位為秒,取值範圍是1~99999999(3年多一些)。

    500000

    path

    String

    目錄,必須以正斜線(/)開頭。

    /example/demo

    weight

    Integer

    權重。取值:1~99。

    說明

    預設為1,數字越大優先順序越高。

    1

    swift_origin_cache_high

    String

    來源站點響應緩衝策略優先,當開啟時,表示在來源站點響應緩衝相關頭(比如Cache-Control、Pragma等)的時候,來源站點的緩衝策略優先生效。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_no_cache_low

    String

    忽略來源站點不緩衝回應標頭,當開啟時,表示忽略來源站點的以下回應標頭(均表示不緩衝)。

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragme: no-cache

    可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_follow_cachetime

    String

    用戶端跟隨CDN緩衝策略,當開啟時,表示將最終生效的CDN緩衝策略響應給用戶端。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "path",
                "argValue": "/example/demo"
            }, {
                "argName": "weight",
                "argValue": "1"
            }, {
                "argName": "ttl",
                "argValue": "500000"
            }, {
                "argName": "swift_origin_cache_high",
                "argValue": "off"
            }, {
                "argName": "swift_no_cache_low",
                "argValue": "off"
            }, {
                "argName": "swift_follow_cachetime",
                "argValue": "off"
            }],
            "functionName": "path_based_ttl_set"
        }],
        "DomainNames": "example.com"
    }

filetype_force_ttl_code

  • 功能說明:設定檔狀態代碼到期時間,該功能詳細介紹請參見控制台配置說明配置狀態代碼到期時間

  • 功能ID(FunctionID/FuncId):63。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    file_type

    String

    檔案類型,區分大小寫,多個用半形逗號(,)分隔,例如:jpg,txt。

    jpg

    code_string

    String

    狀態代碼及其緩衝時間,單位為秒,取值範圍是1~99999999(3年多一些),多個用半形逗號(,)分隔。例如:302=0,301=0,4xx=2。

    403=10

    swift_origin_cache_high

    String

    來源站點響應緩衝策略優先,當開啟時,表示在來源站點響應緩衝相關頭(比如Cache-Control、Pragma等)的時候,來源站點的緩衝策略優先生效。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_no_cache_low

    String

    忽略來源站點不緩衝回應標頭,當開啟時,表示忽略來源站點的以下回應標頭(均表示不緩衝)。

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragme: no-cache

    可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_follow_cachetime

    String

    用戶端跟隨CDN緩衝策略,當開啟時,表示將最終生效的CDN緩衝策略響應給用戶端。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "file_type",
                "argValue": "jpg"
            }, {
                "argName": "code_string",
                "argValue": "403=10"
           }, {
                "argName": "swift_origin_cache_high",
                "argValue": "off"
            }, {
                "argName": "swift_no_cache_low",
                "argValue": "off"
            }, {
                "argName": "swift_follow_cachetime",
                "argValue": "off"
            }],
            "functionName": "filetype_force_ttl_code"
        }],
        "DomainNames": "example.com"
    }

path_force_ttl_code

  • 功能說明:配置路徑狀態代碼到期時間,該功能詳細介紹請參見控制台配置說明配置狀態代碼到期時間

  • 功能ID(FunctionID/FuncId):65。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    path

    String

    目錄,必須以正斜線(/)開頭,例如:/image。

    /example/demo

    code_string

    String

    狀態代碼及其緩衝時間,單位為秒,取值範圍是1~99999999(3年多一些),多個用半形逗號(,)分隔。例如:302=0,301=0,4xx=2。

    403=10,404=15

    swift_origin_cache_high

    String

    來源站點響應緩衝策略優先,當開啟時,表示在來源站點響應緩衝相關頭(比如Cache-Control、Pragma等)的時候,來源站點的緩衝策略優先生效。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_no_cache_low

    String

    忽略來源站點不緩衝回應標頭,當開啟時,表示忽略來源站點的以下回應標頭(均表示不緩衝)。

    • Cache-Control: no-store

    • Cache-Control: no-cache

    • Cache-Control: max-age=0

    • Pragme: no-cache

    可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

    swift_follow_cachetime

    String

    用戶端跟隨CDN緩衝策略,當開啟時,表示將最終生效的CDN緩衝策略響應給用戶端。可以配置的值為:

    • on:開啟

    • off(預設):關閉

    off

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "path",
                "argValue": "/example/demo"
            }, {
                "argName": "code_string",
                "argValue": "403=10,404=15"
            }, {
                "argName": "swift_origin_cache_high",
                "argValue": "off"
            }, {
                "argName": "swift_no_cache_low",
                "argValue": "off"
            }, {
                "argName": "swift_follow_cachetime",
                "argValue": "off"
            }],
            "functionName": "path_force_ttl_code"
        }],
        "DomainNames": "example.com"
    }

default_ttl_code

  • 功能說明:配置狀態代碼到期時間(來源站點優先),該功能詳細介紹請參見控制台配置說明配置狀態代碼到期時間(來源站點優先)

  • 功能ID(FunctionID/FuncId):207。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    default_ttl_code

    String

    狀態代碼及其緩衝時間,單位為秒,取值範圍是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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    key

    String

    回應標頭。

    Cache-Control

    value

    String

    回應標頭值,多個值之間用英文逗號(,)分隔。

    說明

    如果要刪除某個回應標頭,請設定回應標頭的值為null。

    no-cache

    header_operation_type

    String

    要求標頭操作,取值:

    • add:添加。

    • delete:刪除。

    • modify:變更。

    • rewrite:替換。

    add

    duplicate

    String

    是否允許重複添加名稱相同的要求標頭。當header_operation_type使用add時(即執行增加操作),需要設定是否允許重複:

    • on:允許重複。

    • off:不允許重複。

    off

    header_source

    String

    尋找需要替換的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數,取值支援Regex。

    value1

    header_destination

    String

    替換後的參數值。當header_operation_type使用rewrite時(即執行替換操作),需要設定該參數。

    value123

    match_all

    String

    設定匹配模式。當header_operation_type使用rewrite時(即執行替換操作),需要設定匹配模式:

    • on:匹配所有(所有匹配上的值都會被替換)。

    • off:僅匹配第一個(只有第一個匹配上的值會被替換)。

    /

    access_origin_control

    String

    是否開啟跨域訪問:

    • 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_code

    Integer

    錯誤碼。

    404

    rewrite_page

    String

    重新導向頁面。

    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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    regex

    String

    需要重寫的URI,以“/”開頭的URI,不含“http://”頭及網域名稱。支援PCRERegex,例如:^/hello$。

    ^/hello$

    replacement

    String

    目標URI,以“/”開頭的URI,不含“http://”頭及網域名稱。

    /hello/test

    flag

    String

    指定CDN節點在URI改寫完成之後執行的動作,取值:

    • :預設為空白,指的是不傳flag參數。在配置了多條規則的情況下,如果請求URL匹配了某條規則,執行完當前規則以後,還會繼續匹配後續規則。

    • break:如果請求URL匹配了某條規則,該請求將會被重寫為目標URL(不修改原始URL中的參數)。執行完當前規則後,當存在其他配置規則時,將不再匹配剩餘規則。

    • redirect:如果請求URL匹配某條規則,該請求將會被302重新導向到目標URL,CDN節點將返回給用戶端的Location資訊為目標URL(不修改原始URL中的參數)。執行完當前規則後,當存在其他配置規則時,會繼續匹配剩餘規則。

    • enhance_break:和 break類似,但是會修改包含參數在內的整個URL。

    • enhance_redirect:和redirect類似,但是會修改包含參數在內的整個URL。

    說明

    不同的執行規則使用的重寫方式不同,重寫後的URL是否支援其他網域名稱、其他協議也存在差異:

    • breakenhance_break採用直接重寫使用者請求URL的方式,不支援重寫為其他網域名稱,也不支援重寫為其他協議(例如從HTTP協議重寫為HTTPS協議)。

    • redirectenhance_redirect採用302跳轉方式實現URL重寫,支援重寫為其他網域名稱,也支援重寫為其他協議:

      • 302 Location地址除了可以設定為當前的加速網域名稱,還支援設定為其他網域名稱,可以實現這樣的效果:原始URL使用的網域名稱是example.com,重寫後的URL使用新的網域名稱aliyundoc.com。

      • 302 Location地址支援使用其他協議,可以實現這樣的效果:原始URL使用HTTP協議,重寫後的URL使用HTTPS協議。

    redirect

    rewrite_method

    String

    重新導向方式,支援302、303、307狀態代碼:

    • 302:預設重新導向方式,GET請求方式不會發生變更,其他請求方式有可能會變更為GET請求方式。

    • 303:GET請求方式不會發生變更,其他請求方式會變更為GET請求方式(訊息主體會丟失)。

    • 307:請求方式和訊息主體都不發生變化。

    302

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "flag",
                "argValue": "redirect"
            }, {
                "argName": "regex",
                "argValue": "^/hello$"
            }, {
                "argName": "replacement",
                "argValue": "/hello/test"
            }, {
                "argName": "rewrite_method",
                "argValue": "302"
            }],
            "functionName": "host_redirect"
        }],
        "DomainNames": "example.com"
    }

self_defined_cachekey

  • 功能說明:配置自訂Cachekey,該功能詳細介紹請參見控制台配置說明自訂Cachekey

  • 功能ID(FunctionID/FuncId):227。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    uri

    Array of String

    將請求中的源URI改寫為目標URI,然後存為cachekey。

    • uri_to_rewrite用於指定源uri。

    • ai_uri_regex用於指定目標uri。

    [{"uri_to_rewrite":"/hello","ai_uri_regex":"/hello/test"}]

    args

    Array of String

    請求中的參數進行增、刪、改和保留操作,然後後存為cachekey,取值:

    • args_operation_type:指定參數操作類型,支援add(修改)、delete(刪除)、modify(變更)和keep(保留)。

    • args:指定參數操作對應的參數值。

    [{"args":"test=123","args_operation_type":"add"}]

    headers

    String

    用於增加多個http header,並且拼接到cachekey中,多個http header之間使用空格分隔。

    example

    variable

    Array of String

    自訂變數,可使用Regex從請求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_host

    String

    可以與當前網域名稱共用快取的目標網域名稱。該配置不修改使用者請求的回源HOST,只是在查詢快取資源的時候,使用share_host值來產生查詢用的cachekey。

    example.com

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "share_host",
                "argValue": "example.com"
            }],
            "functionName": "rewrite_host"
        }],
        "DomainNames": "example.com"
    }

serving_stale_content

  • 功能說明:響應到期緩衝。

  • 功能ID(FunctionID/FuncId):260。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    origin_error_status_code

    Integer

    自訂來源站異常狀態代碼。

    • 功能說明:用於設定在來源站點返回哪些狀態代碼時適用於此功能配置。

    • 預設值:預設不填寫。預設情況下,來源站點異常的定義是逾時+所有的5xx狀態代碼。

    • 配置說明:支援直接輸入4xx、5xx來模糊比對,也支援輸入502、504這樣的狀態代碼來精確匹配;支援輸入多個狀態代碼,輸入多個狀態代碼的情況下,各個狀態代碼之間用英文逗號進行分隔。

    502

    extend_expiration_time

    Integer

    到期延長時間。

    • 功能說明:緩衝到期後,希望保留舊緩衝的最長時間。

    • 預設值:預設不填寫。預設情況下,到期延長時間是1小時。

    • 配置說明:輸入值為大於等於1的正整數,單位為秒。

    60

    origin_first

    Integer

    來源站點策略優先。

    • 功能說明:參數配置為on的情況下可以開啟來源站點策略優先,這時候如果來源站點返迴文件時攜帶了緩衝策略Cache-Control: stale-if-error=xx,將優先遵循來源站點響應資訊裡面stale-if-error參數設定的時間來作為到期延長時間。

    • 預設值:預設不填寫。預設情況下,等同於off,這時候使用的是通過參數extend_expiration_time設定的到期延長時間

    • 配置說明:支援on(開啟)、off(關閉)。

    on

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "origin_error_status_code",
                "argValue": "502"
            }, {
                "argName": "extend_expiration_time",
                "argValue": "60"
            }, {
                "argName": "origin_first",
                "argValue": "off"
            }],
            "functionName": "serving_stale_content"
        }],
        "DomainNames": "example.com"
    }

HTTPS配置

https_option

  • 功能說明:配置HTTPS基礎參數,該功能詳細介紹請參見控制台配置說明配置HTTPS認證配置HTTP/2配置OCSP Stapling

  • 功能ID(FunctionID/FuncId):78。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    http2

    String

    是否開啟HTTP2開關:

    • on:開啟。

    • off:關閉。

    on

    ocsp_stapling

    String

    是否開啟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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟強制HTTP跳轉:

    • on:開啟。

    • off:關閉。

    on

    http_rewrite

    String

    跳轉方式,支援301、308狀態代碼:

    • 301:GET請求方式不會發生變更,其他請求方式有可能會變更為GET請求方式。

    • 308:請求方式和訊息主體都不發生變化。

    301

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "http_rewrite",
                "argValue": "301"
            }],
            "functionName": "http_force"
        }],
        "DomainNames": "example.com"
    }

https_force

  • 功能說明:配置強制HTTPS跳轉,該功能詳細介紹請參見控制台配置說明配置強制跳轉

  • 功能衝突說明:強制HTTPS跳轉功能與強制HTTP跳轉功能(功能函數:http_force,功能ID:45)存在衝突,只能二選其一。如果已經配置了其中一個功能(注意:如果功能函數存在功能開關配置參數,在參數被置為off的情況下,也屬於已存在配置),則必須刪除已經添加的功能配置(您可以通過調用DeleteSpecificConfig介面來刪除網域名稱的指定配置),然後才能給另外一個功能添加配置。

  • 功能ID(FunctionID/FuncId):44。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟強制HTTPS跳轉:

    • on:開啟。

    • off:關閉。

    on

    https_rewrite

    String

    跳轉方式,支援301、308狀態代碼:

    • 301:GET請求方式不會發生變更,其他請求方式有可能會變更為GET請求方式。

    • 308:請求方式和訊息主體都不發生變化。

    301

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }, {
                "argName": "https_rewrite",
                "argValue": "301"
            }],
            "functionName": "https_force"
        }],
        "DomainNames": "example.com"
    }

https_tls_version

  • 功能說明:配置TLS協議版本,該功能詳細介紹請參見控制台配置說明配置TLS版本與加密套件

  • 功能ID(FunctionID/FuncId):110。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    tls10

    String

    是否開啟TLSv1.0:

    • on(預設):開啟。

    • off:關閉。

    on

    tls11

    String

    是否開啟TLSv1.1:

    • on(預設):開啟。

    • off:關閉。

    on

    tls12

    String

    是否開啟TLSv1.2:

    • on(預設):開啟。

    • off:關閉。

    on

    tls13

    String

    是否開啟TLSv1.3:

    • on(預設):開啟。

    • off:關閉。

    on

    ciphersuitegroup

    String

    密碼編譯演算法套件組:

    • all(預設):全部密碼編譯演算法套件。

    • strict:強密碼編譯演算法套件。

    • custom:自訂密碼編譯演算法套件。

    all

    String

    密碼編譯演算法套件,配合ciphersuitegroup參數(自訂密碼編譯演算法套件)使用,可以配置多個密碼編譯演算法套件,中間用英文逗號分隔。

    TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

  • 配置樣本:

    • 預設配置,開啟TLS1.0、1.1、1.2,使用全部密碼編譯演算法套件。

      {
          "Functions": [{
              "functionArgs": [
                  {
                    "ArgValue": "on",
                    "ArgName": "tls10"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls11"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls12"
                  },
                  {
                    "ArgValue": "off",
                    "ArgName": "tls13"
                  },
                  {
                    "ArgValue": "all",
                    "ArgName": "ciphersuitegroup"
                  }
                ],
              "functionName": "https_tls_version"
          }],
          "DomainNames": "example.com"
      }
    • 開啟TLS1.2、1.3,使用強密碼編譯演算法套件。

      {
          "Functions": [{
              "functionArgs": [
                  {
                    "ArgValue": "off",
                    "ArgName": "tls10"
                  },
                  {
                    "ArgValue": "off",
                    "ArgName": "tls11"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls12"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls13"
                  },
                  {
                    "ArgValue": "strict",
                    "ArgName": "ciphersuitegroup"
                  }
                ],
              "functionName": "https_tls_version"
          }],
          "DomainNames": "example.com"
      }
    • 開啟TLS1.2、1.3,使用自訂密碼編譯演算法套件。

      {
          "Functions": [{
              "functionArgs": [
                  {
                    "ArgValue": "off",
                    "ArgName": "tls10"
                  },
                  {
                    "ArgValue": "off",
                    "ArgName": "tls11"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls12"
                  },
                  {
                    "ArgValue": "on",
                    "ArgName": "tls13"
                  },
                  {
                    "ArgValue": "custom",
                    "ArgName": "ciphersuitegroup"
                  },
                  {
                    "ArgValue": "TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
                    "ArgName": "ciphersuite"
                  }
                ],
              "functionName": "https_tls_version"
          }],
          "DomainNames": "example.com"
      }

HSTS

  • 功能說明:配置HSTS,該功能詳細介紹請參見控制台配置說明配置HSTS

  • 功能ID(FunctionID/FuncId):112。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enabled

    String

    是否開啟HSTS:

    • on:開啟。

    • off:關閉。

    on

    https_hsts_max_age

    Integer

    到期時間,單位:秒。

    說明

    建議填寫5184000s(60天)。

    5184000

    https_hsts_include_subdomains

    String

    配置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_list

    String

    白名單列表,多個用半形逗號(,)分隔。

    example.aliyundoc.com,demo.aliyundoc.com

    allow_empty

    String

    是否允許空referer欄位訪問CDN資源。取值:

    • on:允許。

    • off(預設值):禁止。

    off

    redirect_url

    String

    重新導向URL,即使用者請求中的referer資訊未匹配上白名單列表,被攔截後不會再返回403,而是會返回302加Location頭,該項為Location頭的值,以 http:// 或者 https:// 開頭。

    http://www.example.com

    disable_ast

    String

    使用精確匹配模式,控制“白名單列表”項中填寫的網域名稱是否為精確匹配。如果勾選(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_scheme

    String

    開啟忽略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_list

    String

    黑名單列表,多個用半形逗號(,)分隔。

    example.aliyundoc.com,demo.aliyundoc.com

    allow_empty

    String

    是否允許空referer欄位訪問CDN資源:

    • on:允許。

    • off:禁止。

    off

    redirect_url

    String

    重新導向URL,即使用者請求中的referer資訊匹配上黑名單列表,被攔截後不會再返回403,而是會返回302加Location頭,該項為Location頭的值,以 http:// 或者 https:// 開頭。

    http://www.example.com

    disable_ast

    String

    使用精確匹配模式,控制“黑名單列表”項中填寫的網域名稱是否為精確匹配。如果勾選(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_scheme

    String

    開啟忽略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_m3u8

    String

    開啟m3u8內容改寫,對m3u8裡面的ts補齊對應的鑒權,可以避免ts的訪問鑒權失敗,取值on(預設值)和off。

    on

    auth_type

    String

    鑒權類型。取值:

    • no_auth:無鑒權。

    • type_a:鑒權方式A。

    • type_b:鑒權方式B。

    • type_c:鑒權方式C。

    • type_f:鑒權方式F。

    type_a

    auth_key1

    String

    鑒權key1(16~128個字元支援大寫字母、小寫字母和數字)。

    1234567890123456789

    auth_key2

    String

    鑒權key2(16~128個字元支援大寫字母、小寫字母和數字)。

    1234567890123456789

    ali_auth_delta

    Integer

    鑒權URL有效時間長度,預設1800,單位:秒。

    1800

    req_auth_ip_white

    String

    白名單例外IP列表,白名單中的IP不去進行鑒權校正。

    支援輸入多個IP地址,多個IP地址之間使用英文逗號分隔。

    192.168.0.1

    req_auth_ip_acl_xfwd

    String

    用戶端例外IP的提取方式,取值支援:

    • on:該模式為預設模式。該模式校正的是使用者請求中x-forwarded-for要求標頭攜帶的左邊第一個IP,這個IP對應用戶端真實IP。

    • off:該模式校正的是用戶端與CDN節點之間建連使用的IP。

    • all:同時校正以下兩個IP地址資訊:

      • 使用者請求中x-forwarded-for要求標頭攜帶的左邊第一個IP,即用戶端真實IP。

      • 用戶端與CDN節點之間建連使用的IP。

    all

    sign_param

    String

    簽名參數名稱。僅在鑒權類型設定為F方式的時候有效。

    sign

    time_param

    String

    時間戳記參數名稱。僅在鑒權類型設定為F方式的時候有效。

    time

    time_format

    String

    時間戳記格式。僅在鑒權類型設定為F方式的時候有效。

    • dec:十進位

    • hex:十六進位

    hec

    path_encoding

    String

    URL編碼開關,支援on/off。僅在鑒權類型設定為F方式的時候有效。

    on

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "auth_type",
                "argValue": "type_a"
            }, {
                "argName": "auth_key1",
                "argValue": "1234567890123456789"
            }, {
                "argName": "auth_key2",
                "argValue": "1234567890123456789"
            }, {
                "argName": "ali_auth_delta",
                "argValue": 1800
            }, {
                "argName": "req_auth_ip_white",
                "argValue": "192.168.0.1"
            }, {
                "argName": "req_auth_ip_acl_xfwd",
                "argValue": "all"
            }{
                "argName": "sign_param",
                "argValue": "sign"
            }, {
                "argName": "time_param",
                "argValue": "time",
            }, {
                "argName": "time_format",
                "argValue": "hec"
            }, {
                "argName": "path_encoding",
                "argValue": "on"
            }],
            "functionName": "aliauth"
        }],
        "domainNames": "example.com"
    }
    

cdn_remote_auth

  • 功能說明:配置遠程鑒權,該功能詳細介紹請參見控制台配置說明配置遠程鑒權

  • 功能ID(FunctionID/FuncId):258。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟遠程鑒權:

    • on:開啟。

    • off:關閉。

    on

    remote_auth_addr

    String

    鑒權伺服器位址。格式:https://cdn.aliyun.com/auth或者http://10.10.10.10/auth

    https://example.aliyundoc.com/auth

    remote_auth_method

    String

    要求方法,支援get/post/head。

    get

    remote_auth_type

    String

    鑒權檔案類型。all表示所有類型,多個檔案類型用豎線分隔、區分大小寫(jpg不等同於JPG)。

    all

    remote_auth_reserve_args

    String

    保留參數設定,多個要求標頭用豎線分隔,不區分大小寫(key等同於KEY)。

    all:保留所有參數。

    ali_delete_all_args:表示刪除所有URL參數)。

    all

    remote_auth_custom_args

    String

    添加自訂參數,多個參數用豎線分隔、區分大小寫(key不等同於KEY)。

    remote_auth_reserve_header

    String

    保留要求標頭設定,多個要求標頭用豎線分隔,不區分大小寫(http_remote_addr等同於HTTP_Remote_Addr)。

    • all:保留所有要求標頭。

    • ali_delete_all_headers:刪除所有要求標頭。

    all

    remote_auth_custom_header

    String

    添加自訂要求標頭,多個要求標頭用豎線分隔、不區分大小寫(http_remote_addr等同於HTTP_Remote_Addr)。

    remote_auth_success_code

    Integer

    鑒權成功狀態代碼,指鑒權伺服器在鑒權成功之後傳給CDN的鑒權結果。例如:200。支援配置多個狀態代碼,多個狀態代碼之間用英文逗號分隔。

    200

    remote_auth_fail_code

    Integer

    鑒權失敗狀態代碼,指鑒權伺服器在鑒權失敗之後傳給CDN的鑒權結果。例如:403。支援配置多個狀態代碼,多個狀態代碼之間用英文逗號分隔。

    403,404

    remote_auth_other_code_act

    String

    其他狀態代碼是否允許存取,表示在鑒權伺服器返回的狀態代碼既不是鑒權成功狀態代碼,也不是鑒權失敗狀態代碼的情況下,CDN對使用者請求的處理方式,取值:

    • pass:通過(預設值)。

    • reject:拒絕。

    pass

    remote_auth_fail_resp_code

    Integer

    鑒權失敗CDN響應狀態代碼。例如:403,CDN傳給使用者的狀態代碼。

    403

    remote_auth_timeout

    Integer

    鑒權逾時配置,單位ms,最大值為3000。

    500

    remote_auth_timeout_action

    String

    鑒權逾時行為,取值:

    • 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_other_code_act",
                "argValue": "pass"
            }, {
                "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_list

    String

    IP列表,多個用半形逗號(,)分隔。

    192.168.0.1/24

    ip_acl_xfwd

    String

    使用X-Forwarded-For要求標頭中的IP,取值範圍:

    • on:預設取值,使用使用者請求中的x-forwarded-for要求標頭(從左向右取第一個IP)作為判斷依據。

    • off:使用真實建連ip作為判斷依據。

    • all:同時使用x-forwarded-for真實建連ip作為判斷依據。

    all

  • 配置樣本:

    {
        "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_list

    String

    IP列表,多個用半形逗號(,)分隔。

    192.168.0.1

    ip_acl_xfwd

    String

    使用X-Forwarded-For要求標頭中的IP,取值範圍:

    • on:預設取值,使用使用者請求中的x-forwarded-for要求標頭(從左向右取第一個IP)作為判斷依據。

    • off:使用真實建連ip作為判斷依據。

    • all:同時使用x-forwarded-for真實建連ip作為判斷依據。

    all

  • 配置樣本:

    {
        "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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    ua

    String

    填寫User-Agent,支援萬用字元號*(匹配任一字元串)和多個值(多個值用|分割。例如:*curl*|*IE*|*chrome*|*firefox*。)

    *curl*|*IE*|*chrome*|*firefox*

    type

    String

    名單類型,取值:

    • 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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟頁面最佳化加速:

    • on:開啟。

    • off:關閉。

    on

    trim_js

    String

    是否最佳化HTML中內嵌的js代碼:

    • on:開啟。

    • off(預設):關閉。

    off

    trim_css

    String

    是否最佳化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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟頁面Gzip最佳化:

    • on:開啟。

    • off:關閉。

    on

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "gzip"
        }],
        "DomainNames": "example.com"
    }

brotli

  • 功能說明:配置頁面Brotli壓縮,該功能詳細介紹請參見控制台配置說明Brotli壓縮

  • 功能ID(FunctionID/FuncId):97。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟頁面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_args

    String

    保留參數列表,多個用半形逗號(,)分隔,最多支援填寫10個。

    key1,key2

    disable

    String

    是否忽略所有參數:

    • on:忽略所有參數,除了添加參數功能仍能生效以外,刪除參數、僅保留、修改參數功能都將失效。

    • off(預設):關閉忽略參數功能,保留參數、添加參數、刪除參數仍會生效。

    說明

    緩衝hashkey忽略所有參數,優先順序低於保留緩衝參數列表功能。

    on

    keep_oss_args

    String

    是否保留回源參數:

    • 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:19)存在衝突,只能二選其一。如果已經配置了其中一個功能(注意:如果功能函數存在功能開關配置參數,在參數被置為off的情況下,也屬於已存在配置),則必須刪除已經添加的功能配置(您可以通過調用DeleteSpecificConfig介面來刪除網域名稱的指定配置),然後才能給另外一個功能添加配置。

  • 功能ID(FunctionID/FuncId):75。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    ali_remove_args

    String

    刪除指定的參數,多個參數之間用空格隔開。

    說明

    剩餘參數將作為hashkey中URL args部分。

    test

    keep_oss_args

    String

    回源是否保留參數:

    • 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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟圖片轉換:

    • on:開啟。

    • off:關閉。

    on

    filetype

    String

    支援轉碼的圖片格式,以豎線分割符號分隔。支援以下參數值:

    • JPEG:JPEG 圖片格式。

    • JPG:JPG 圖片格式。

    • PNG:PNG 圖片格式。

    • WEBP:WEBP 圖片格式。

    • BMP:BMP 圖片格式。

    • GIF:GIF 圖片格式。

    • TIFF:TIFF 圖片格式。

    • JP2:JPEG 2000 圖片格式。

    jpg|jpeg|png

    webp

    String

    是否開啟自適應轉換WEBP:

    • on:開啟。

    • off:關閉。

    on

    orient

    String

    是否開啟圖片自旋轉:

    • on:開啟。

    • off:關閉。

    說明

    只對有自旋轉屬性的圖片生效。

    on

    slim

    Integer

    圖片瘦身,設定瘦身的百分比,可配置範圍是[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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟range回源:

    • on:開啟。

    • off:關閉。

    • force:強制開啟。

    on

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "range"
        }],
        "DomainNames": "example.com"
    }

video_seek

  • 功能說明:配置視頻拖拽播放,該功能詳細介紹請參見控制台配置說明配置拖拽播放

  • 功能ID(FunctionID/FuncId):30。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟視頻拖拽播放:

    • on:開啟。

    • off:關閉。

    on

    flv_seek_by_time

    String

    是否開啟FLV按時間拖拽:

    • on:開啟。

    • off:關閉。

    on

    mp4_seek_start

    String

    自訂MP4啟動參數。

    mp4starttime

    mp4_seek_end

    String

    自訂MP4結束參數。

    mp4endtime

    flv_seek_start

    String

    自訂FLV啟動參數。

    flvstarttime

    flv_seek_end

    String

    自訂FLV結束參數。

    flvendtime

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "video_seek"
        }],
        "DomainNames": "example.com"
    }

ali_video_split

  • 功能說明:配置聽視頻,該功能詳細介紹請參見控制台配置說明配置聽視頻

  • 功能ID(FunctionID/FuncId):204。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟聽視頻:

    • on:開啟。

    • off:關閉。

    on

  • 配置樣本:

    {
        "Functions": [{
            "functionArgs": [{
                "argName": "enable",
                "argValue": "on"
            }],
            "functionName": "ali_video_split"
        }],
        "DomainNames": "example.com"
    }

ali_video_preview

  • 功能說明:配置視頻試看,該功能詳細介紹請參見控制台配置說明配置音視頻試看

  • 功能ID(FunctionID/FuncId):205。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟視頻試看:

    • on:開啟。

    • off:關閉。

    說明

    支援TS、MP3檔案格式,FLV和MP4使用拖拽功能實現。

    on

    ali_video_preview_argument

    String

    自訂試看參數名,試看參數值的單位必須是秒。

    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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    enable

    String

    是否開啟M3U8標準加密改寫:

    • on:開啟。

    • off:關閉。

    on

    hls_token_arg_name

    String

    自訂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_rate

    String

    指定單請求限速的具體速率(例如:200 KByte/s、1 MByte/s等),支援“數值+字母單位”的參數值(字母單位支援k、m),單位Byte/s。

    最小隻能設定為100k,低於100k的值將會按100k來執行。

    • 1m:表示單請求限速為1 MByte/s

    • 100k:表示單請求限速為100 KByte/s

    ali_limit_rate_after

    String

    不限速大小,在發送了多少資料之後才開始限速。支援“數值+字母單位”的參數值(字母單位支援k、m),單位Byte。

    1000

    traffic_limit_arg

    String

    限速參數名稱,根據URL中提取的arg進行限速,例如:rate。

    當請求中不帶限速參數時,按預設限速值ali_limit_rate限速,如果想達到請求中沒限速參數時不限速的效果,則把預設限速值ali_limit_rate配置為0k。

    rate

    traffic_limit_unit

    String

    限速參數traffic_limit_arg的單位,支援m(MByte/s)、k(KByte/s)。限速參數單位設定為m的情況下,當使用者請求URL中攜帶的rate=1時,實際限速值為1MByte/s。

    最小隻能設定為100k,低於100k的值將會按100k來執行。

    m

    ali_limit_start_hour

    Integer

    限速開始時間,取值範圍[0,24],小於限速結束時間,預設值為0。

    說明

    表示時間點,24小時制的整點,例如:0表示00:00:00,24表示24:00:00。

    20

    ali_limit_end_hour

    Integer

    限速結束時間,取值範圍[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。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    rule

    String

    DSL規則。

    if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}

    pri

    Integer

    優先順序,取值:[0,999],數字越小優先順序越高。

    說明

    頭部執行和尾部執行的優先順序互相獨立。

    0

    enable

    String

    本條規則是否生效:

    • on:生效。

    • off:無效。

    on

    name

    String

    規則名稱,僅支援英文字母和底線(_)。

    test

    pos

    String

    規則執行位置,取值:

    • head(預設值):請求處理流程頭部介入。

    • foot:請求處理流程尾部介入。

    head

    brk

    String

    中斷執行,取值:

    • on:命中本條規則後,當前執行位置剩餘規則均跳過。

    • off(預設值):命中本條規則後,還會執行剩餘規則。

    off

    option

    String

    擴充欄位。

    grammar

    String

    規則文法,取值:es2(預設值)和js。

    /

    jsmode

    String

    JS執行模式,取值:

    • 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。

  • 該功能需要申請再開通,您需要提交工單申請開通該功能。

  • 參數說明:

    參數

    類型

    是否必選

    描述

    樣本值

    rule

    Array

    規則條件的具體內容,包括名稱、狀態、邏輯判斷、條件運算式。

    規則條件內容:

    {\"match\":{\"logic\":\"and\",\"criteria\":[{\"matchType\":\"clientipVer\",\"matchObject\":\"CONNECTING_IP\",\"matchOperator\":\"equals\",\"matchValue\":\"v6\",\"negate\":false}]},\"name\":\"example\",\"status\":\"enable\"}

    實現效果:

    • 規則名稱:example

    • 狀態:enable

    • 邏輯判斷:and

    • 條件運算式:用戶端建聯IP的協議版本等於v6

    條件運算式的格式(即argValue的格式)說明如下:

    參數

    說明

    \"match\":

    match表示條件匹配運算式。

    \"logic\":\"and\"

    logic表示條件匹配運算式的邏輯判斷參數,取值為and和or。

    \"criteria\"

    criteria表示條件運算式的判斷內容。

    \"matchType\":\"clientipVer\"

    matchType表示對使用者請求中攜帶的某一類型資訊進行匹配。

    \"matchObject\":\"CONNECTING_IP\"

    matchObject表示對匹配類型進行進一步的細分,例如:用戶端IP可以進一步細分為“建聯IP”和“XFF IP”。

    \"matchOperator\":\"equals\"

    matchOperator表示匹配操作執行的具體動作。

    \"matchValue\":\"v6\"

    matchValue表示預先設定的匹配值,將會與使用者請求中攜帶的資訊進行匹配。

    \"negate\":false

    negate表示是否對條件運算式的結果取反,取值為true和false。

    \"name\":\"example\"

    name表示規則條件的名稱。

    \"status\":\"enable\"

    status表示規則條件的生效狀態。

  • 配置樣本:

    以下樣本示範了如何通過OpenAPI來給加速網域名稱example.com添加一個規則引擎配置,實現對用戶端IP協議版本是否為IPv6的匹配和過濾。對於規則引擎功能的詳細說明請參見規則引擎

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

    建立完成的規則引擎配置,可以供其他功能配置時關聯引用(當前支援引用規則引擎配置的功能列表請參見規則引擎),以實現更加靈活、更加精確地控制CDN各種配置策略的執行效果。例如:條件來源站點功能(功能函數是origin_dns_host)的配置就可以關聯引用規則引擎的配置,配置樣本可以參見origin_dns_host

    需注意:其他功能在關聯引用規則引擎配置的時候,需要通過設定parentid來引用已經使用規則引擎功能建立好的某個規則條件,這裡的parentid等於添加規則引擎配置時產生的configid。

QUIC

quic

  • 功能說明:QUIC基礎參數,該功能詳細介紹請參見控制台配置說明配置QUIC協議

  • 功能ID(FunctionID/FuncId):281。

  • 該功能需要申請再開通,您需要提交工單申請開通該功能。