BatchSetCdnDomainConfig および SetCdnDomainStagingConfig API 操作を呼び出すことで、一度に複数のドメイン名の機能を設定できます。このトピックでは、設定可能な機能とそのパラメーターについて説明します。
このトピックで説明する機能は、次の API 操作から参照できます:
BatchSetCdnDomainConfig とSetCdnDomainStagingConfig を呼び出して、ドメイン名にバッチ構成を適用できます。 これにより一意のConfigId が生成され、それを使用して特定の構成を更新または削除できます。 詳細については、「ConfigId の使用」をご参照ください。
基本情報
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
説明:デフォルトの back-to-origin HOST を設定します。詳細については、「デフォルトの back-to-origin HOST の設定」をご参照ください。
関数 ID (FunctionID/FuncId):18。
パラメーター:
パラメーター
タイプ
必須
説明
例
domain_name
String
はい
オリジンホストヘッダーのコンテンツ。
example.com設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "domain_name", "argValue": "example.com" }], "functionName": "set_req_host_header" }], "DomainNames": "example.com" }
forward_scheme
説明:back-to-origin プロトコルポリシーを設定します。詳細については、「back-to-origin プロトコルポリシーの設定」をご参照ください。
関数 ID (FunctionID/FuncId):47。
パラメーター:
パラメーター
タイプ
必須
説明
例
enable
String
はい
back-to-origin プロトコルポリシーを有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
on
scheme_origin
String
いいえ
back-to-origin プロトコル。有効な値:
http: CDN は HTTP を使用してオリジンフェッチを行います。
https: CDN は HTTPS を使用してオリジンフェッチを行います。
follow: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
設定例 1:CDN はクライアントリクエストと同じプロトコルを使用して back-to-origin を実行します。オリジンポートはプロトコルのデフォルトポートです。HTTP にはポート 80、HTTPS にはポート 443 が使用されます。
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "scheme_origin", "argValue": "follow" }], "functionName": "forward_scheme" }], "DomainNames": "example.com" }設定例 2:CDN はクライアントリクエストと同じプロトコルを使用して back-to-origin を実行します。オリジンポートはカスタムポートです。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
プライベート OSS バケットの back-to-origin を設定します。注:この機能を初めて使用する場合は、ワンクリック操作でデフォルトのアクセスポリシーを有効にする必要があります。これにより、CDN は、ご利用のアカウント配下にあるすべての OSS バケットに対する読み取り専用のアクセス権限を取得します。詳細については、「プライベート OSS バケットの back-to-origin」をご参照ください。
関数 ID (FunctionID/FuncId):85。
パラメーター:
パラメーター
タイプ
必須
説明
例
private_oss_auth
String
はい
プライベートバケットからの back-to-origin を有効にするかどうかを指定します。有効な値:
on:有効化。
Off:シャットダウンを示します。
この機能を有効にすると、システムは自動的に Security Token Service (STS) トークンを設定し、設定を簡素化します。ただし、この機能は、同じ Alibaba Cloud アカウント内の高速化ドメイン名からプライベート OSS バケットへの back-to-origin のみをサポートします。STS トークンの詳細については、「STS とは」をご参照ください。
on
perm_private_oss_tbl
String
いいえ
永続的なセキュリティトークンの設定。フォーマットは
access_id=123 access_secret=123abcです。フィールドはスペースで区切ります。永続的なセキュリティトークンを設定すると、高速化ドメイン名は、同じ Alibaba Cloud アカウント配下のプライベート OSS バケットだけでなく、別の Alibaba Cloud アカウント配下のプライベート OSS バケットからもコンテンツをフェッチできます。永続的なセキュリティトークンの詳細については、「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 back-to-origin のための秘密鍵のリスト。異なるプライベート OSS バケットとそれに対応するセキュリティトークンに対して、1 つ以上のルールを設定できます。
関数 ID (FunctionID/FuncId):183。
パラメーター:
パラメーター
タイプ
必須
説明
例
host
String
はい
OSS バケットの完全なアドレス。
example.oss-cn-hangzhou.aliyuncs.com
key
String
はい
永続的なセキュリティトークンの設定。フォーマットは
access_id=123 access_secret=123abcです。フィールドはスペースで区切ります。永続的なセキュリティトークンを設定すると、高速化ドメイン名は、同じ Alibaba Cloud アカウント内のプライベート OSS バケットだけでなく、別の Alibaba Cloud アカウント内のプライベート OSS バケットにも back-to-origin を実行できます。永続的なセキュリティトークンの詳細については、「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
説明:back-to-origin リクエストのタイムアウトを設定します。詳細については、「back-to-origin 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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
関数 ID (FunctionID/FuncId):235。
パラメーター:
パラメーター
タイプ
必須
説明
例
variable_type
String
はい
変数のタイプ。有効な値:
header: ユーザーリクエストに含まれるリクエストヘッダー。
arg: ユーザーリクエスト URL に含まれるクエリ文字列パラメーター。
uri:ユーザーリクエスト URL に含まれるパス。
cookie: ユーザーリクエストに含まれるリクエスト cookie。
uri
variable
String
はい
変数の名前。
説明variable_type が uri に設定されている場合、variable の値は uri でなければなりません。
uri
conditions
String
はい
条件。有効な値:
==: 等しい。
!=: 等しくない。
==
value
String
はい
変数の値。
/image
origin
String
はい
back-to-origin 中の DNS クエリに使用されるドメイン名。これは、一致した場合に指定されたオリジンサーバーアドレスへの back-to-origin をトリガーするユーザーリクエスト内の変数値です。
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
はい
back-to-origin の 302 リダイレクトを有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
on
max_tries
Integer
いいえ
302 リダイレクトの最大数。
デフォルト値: 2。
有効な値:1 から 5。
説明302 リダイレクトの回数は、back-to-origin の回数より 1 回少なくなります。back-to-origin のデフォルトの最大回数は 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 リダイレクト中にオリジンドメイン名を変更します。これは、宛先ドメイン名にリダイレクトする場合にのみ有効です。デフォルトでは、オリジンドメイン名は変更されません。
example.com
cache
String
いいえ
リダイレクト結果をキャッシュするかどうかを指定します。有効にすると、CDN は同じ URL のリダイレクト結果をキャッシュして、レスポンスパフォーマンスを向上させます。有効な値:
on:有効化
off (デフォルト):無効化
off
expired_time
Integer
いいえ
リダイレクト結果をキャッシュするタイムアウト期間。このパラメーターはキャッシュ機能と一緒に使用する必要があります。単位:秒。デフォルト値:3600。
7200
follow_origin_host
String
いいえ
302 リダイレクト中にオリジンドメイン名を back-to-origin ホストとして使用するかどうかを指定します。有効にすると、CDN はオリジンドメイン名を back-to-origin ホストとして使用します。プライマリ/セカンダリの切り替え後も、最新のオリジンドメイン名が使用されます。有効な値:
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
説明:カスタムの back-to-origin HTTP ヘッダーを設定します。詳細については、「インバウンドリクエストヘッダーの変更」をご参照ください。
説明set_req_header は v1 の機能です。v2 の機能である origin_request_header の使用を推奨します。v2 機能は、カスタムの back-to-origin HTTP リクエストヘッダーに対してより多くの機能を提供します。
関数 ID (FunctionID/FuncId):39。
パラメーター:
パラメーター
タイプ
必須
説明
例
key
String
はい
back-to-origin リクエストヘッダーの名前。
Accept-Encoding
value
String
はい
オリジンリクエストヘッダーの値。オリジンリクエストヘッダーを削除するには、その値を null に設定します。
gzip
設定例 1:back-to-origin HTTP リクエストヘッダーを追加します。
{ "Functions": [{ "functionArgs": [{ "argName": "value", "argValue": "gzip" }, { "argName": "key", "argValue": "Accept-Encoding" }], "functionName": "set_req_header" }], "DomainNames": "example.com" }設定例 2:値を null に設定して back-to-origin HTTP リクエストヘッダーを削除します。
{ "Functions":[{ "functionArgs":[{ "argName":"value", "argValue":"null" }, { "argName":"key", "argValue":"User-Agent" }], "functionName":"set_req_header" }], "DomainNames":"example.com" }
origin_request_header
説明:back-to-origin HTTP リクエストヘッダー (新規) を設定します。詳細については、「アウトバウンドリクエストヘッダーの変更」をご参照ください。
関数 ID (FunctionID/FuncId):228。
パラメーター:
パラメーター
タイプ
必須
説明
例
header_operation_type
String
はい
リクエストヘッダーの操作。有効な値:
add:項目を追加します。
delete:削除します。
modify:変更または修正します。
replace:置換します。
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 に設定されている場合に必須です。正規表現がサポートされています。
value1
header_destination
String
いいえ
置換後のパラメーター値。このパラメーターは、header_operation_type が rewrite に設定されている場合に必須です。
value123
match_all
String
いいえ
一致モード。このパラメーターは、header_operation_type が rewrite に設定されている場合に必須です。有効な値:
on:すべての値に一致します。一致したすべての値が置換されます。
off:最初の値のみに一致します。一致した最初の値のみが置換されます。
off
設定例:高速化ドメイン名
example.comにカスタムの back-to-origin リクエストヘッダーを追加します。ヘッダー名を 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
説明:back-to-origin HTTP レスポンスヘッダーを設定できます。詳細については、「インバウンドレスポンスヘッダーの変更」をご参照ください。
関数 ID (FunctionID/FuncId):229。
パラメーター:
パラメーター
タイプ
必須
説明
例
header_operation_type
String
はい
レスポンスヘッダーの操作。有効な値:
add:項目を追加します。
delete: 削除。
modify:指定された項目を変更します。
rewrite 操作は replace 操作と同等です。
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 に設定されている場合に必須です。正規表現がサポートされています。
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
説明:back-to-origin URI を書き換えます。詳細については、「back-to-origin URL の書き換え」をご参照ください。
関数 ID (FunctionID/FuncId):225。
パラメーター:
パラメーター
タイプ
必須
説明
例
source_url
String
はい
書き換えられる URI。
^/hello$
target_url
String
はい
宛先 URI。
/hello/test
flag
String
いいえ
書き換え操作の実行ルール。有効な値:
Empty:このルールが実行された後、後続の書き換えルールが引き続き実行されます。
break:このルールが実行された後、後続の書き換えルールは実行されません。
enhance_break:break に似ていますが、URL をそのパラメーターとともに処理し、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
説明:back-to-origin パラメーターを書き換えます。詳細については、「back-to-origin パラメーターの書き換え」をご参照ください。
説明back-to-origin パラメーターの書き換えは、back-to-origin リクエスト URL のクエリパラメーターを変更します。複数の書き換えルールを設定できます。書き換え操作の優先順位は次のとおりです:追加 > 削除 > 保持のみ > 変更。異なる書き換えルールが同じパラメーターに適用される場合、最も優先度の高いルールのみが有効になります。
関数 ID (FunctionID/FuncId):224。
パラメーター:
パラメーター
タイプ
必須
説明
例
delete_argument
String
いいえ
削除するパラメーターのリスト。複数のパラメーターはスペースで区切ります。
code1
save_argument
String
いいえ
保持するパラメーターのリスト。複数のパラメーターはスペースで区切ります。リストされたパラメーターのみが保持されます。追加および削除パラメーターのアクションは引き続き有効です。
empty
ignore_all_argument
String
いいえ
すべてのパラメーターを無視するかどうかを指定します。有効な値:
on:すべてのパラメーターを無視します。追加パラメーター操作のみが有効になります。削除、指定保持、変更パラメーター操作は無効になります。
off (デフォルト):すべてのパラメーターを無視しません。保持、追加、削除パラメーター操作は有効なままです。
on
add_argument
String
いいえ
追加するパラメーター。この操作は最も高い優先度を持ちます。複数のパラメーターはスペースで区切ります。
value=123
modify_argument
String
いいえ
変更するパラメーター。この操作は最も低い優先度を持ちます。パラメーターが削除された場合、それは保持されません。複数のパラメーターはスペースで区切ります。
value=321
enable
String
はい
back-to-origin パラメーターの書き換えを有効にするかどうかを指定します。有効な値:
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 認証バケットを設定します。
関数 ID (FunctionID/FuncId):186。
パラメーター:
パラメーター
タイプ
必須
説明
例
enabled
String
はい
Amazon S3 認証バケットを有効にするかどうかを指定します。有効な値:
l2:有効化。
off:無効化。
l2
bucketname
String
いいえ
Amazon S3 バケットの名前。
/
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 ホワイトリスト) を設定します。コンソールでの詳細な設定手順については、「コモンネームホワイトリスト」をご参照ください。
関数 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 パラメーター、リクエストヘッダーなどのリクエスト内の情報に基づいて、リクエストを指定されたオリジンにルーティングできます。詳細については、「条件付きオリジンの設定」をご参照ください。
前提条件:条件付きオリジンを追加する前に、ルールエンジンで少なくとも 1 つのルール条件を作成する必要があります。条件付きオリジンを追加する際には、それをルール条件に関連付ける必要があります。詳細については、「ルールエンジン」をご参照ください。ルール条件が関連付けられていない場合、CDN のすべての back-to-origin トラフィックはこの単一のオリジンサーバーアドレスに送られ、ルール条件を使用してオリジン URL を制御するという目的が達成されません。
機能の競合に関する注意:条件付きオリジン機能と高度なオリジン機能 (関数:advanced_origin、機能 ID:235) は相互に排他的です。これらの機能のいずれかがすでに設定されている場合は、もう一方を設定する前に、その設定を削除する必要があります。機能のスイッチパラメーターが `off` に設定されていても、その機能は設定済みと見なされます。DeleteSpecificConfig 操作を呼び出して、ドメイン名の指定された設定を削除できます。
関数 ID (FunctionID/FuncId):212。
パラメーター:
パラメーター
タイプ
必須
説明
例
ali_origin_dns_host
String
はい
back-to-origin 中の DNS クエリに使用されるドメイン名。
example.com設定例:`parentid` を設定して、ルールエンジン機能 (関数:condition、関数 ID:250) を使用して作成されたルール条件を参照します。参照は、設定が追加されたときに生成される `configid` を使用して行われます。これにより、ユーザーリクエストがこのルール条件にヒットした場合、back-to-origin は指定されたオリジンサーバーアドレスに送られます。
{ "Functions": [{ "functionArgs": [{ "argName": "ali_origin_dns_host", "argValue": "example.com" }], "functionName": "origin_dns_host", "parentId":30119730104**** }], "DomainNames": "example.com" }
origin_host
説明:特定のオリジンサーバーに対して、特定の back-to-origin HOST を設定できます。コンソールでの設定の詳細については、「特定の back-to-origin HOST の設定」をご参照ください。
関数 ID (FunctionID/FuncId):242。
パラメーター:
パラメーター
タイプ
必須
説明
例
origin
String
はい
特定のオリジンサーバーのアドレス。オリジンサーバーアドレスを指定しないこともできます。その場合、origin パラメーターを all に設定します。これはすべてのオリジンサーバーを表します。
example.comhost
String
はい
特定のホスト。ホストを指定しないこともできます。host パラメーターを
ali_follow_originに設定すると、オリジンサーバーアドレスがホスト値として使用されます。host.example.com設定例 1:ユーザーリクエストがオリジンサーバー
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" }設定例 2:すべてのオリジンサーバー (`all` で表される) へのユーザーリクエストは、同じ `host` 値
host.example.comを使用します。{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "host", "argValue": "host.example.com" }], "functionName": "origin_host" }], "DomainNames": "example.com" }設定例 3:すべてのオリジンサーバー (`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
はい
back-to-origin プロトコル。back-to-origin プロトコルをカスタマイズできます。有効な値:http、https、follow、https_sm、follow_sm。
http:HTTP プロトコルを使用して back-to-origin を実行します。
https:国際アルゴリズムを使用して HTTPS プロトコルで back-to-origin を実行します。
follow:クライアントリクエストと同じプロトコルを使用して back-to-origin を実行します。HTTPS を使用して back-to-origin を実行する場合、国際アルゴリズムのみがサポートされます。
クライアントが HTTP を使用する場合、back-to-origin は HTTP を使用します。
クライアントが HTTPS を使用する場合:
クライアントが国際アルゴリズムを使用する場合、back-to-origin は国際アルゴリズムを使用して HTTPS で実行されます。
クライアントが中国の暗号アルゴリズムを使用する場合、back-to-origin は国際アルゴリズムを使用して HTTPS で実行されます。
https_sm:中国の暗号アルゴリズムを使用して HTTPS プロトコルで back-to-origin を実行します。
follow_sm:クライアントリクエストと同じプロトコルを使用して back-to-origin を実行します。HTTPS を使用して back-to-origin を実行する場合、国際アルゴリズムと中国の暗号アルゴリズムの両方がサポートされます。
クライアントが HTTP を使用する場合、back-to-origin は HTTP を使用します。
クライアントは HTTPS を使用します。
クライアントが国際アルゴリズムを使用する場合、back-to-origin は国際アルゴリズムを使用して HTTPS で実行されます。
クライアントが中国の暗号アルゴリズムを使用する場合、back-to-origin は中国の暗号アルゴリズムを使用して HTTPS で実行されます。
説明国際アルゴリズムは標準の暗号化アルゴリズムです。中国の暗号アルゴリズムは、中国国家暗号管理局によって認定されています。
http
設定例 1:back-to-origin プロトコルを http に、オリジンポートを 80 に設定します。
{ "Functions": [{ "functionArgs": [{ "argName": "port", "argValue": "80" }, { "argName": "scheme", "argValue": "http" }], "functionName": "ali_origin_port_scheme" }], "DomainNames": "example.com" }設定例 2:back-to-origin プロトコルは、ユーザーリクエストで使用されるプロトコルに従います。HTTP を使用して back-to-origin を実行する場合、リクエストはオリジンサーバーのポート 80 に送信されます。HTTPS を使用して back-to-origin を実行する場合、リクエストはオリジンサーバーのポート 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 を設定します。
関数 ID (FunctionID/FuncId):262。
パラメーター:
パラメーター
タイプ
必須
説明
例
origin
String
はい
オリジンサーバーのアドレス。オリジンサーバーアドレスを指定しないこともできます。その場合、origin パラメーターを all に設定します。
example.comsni_host
String
はい
SNI ホスト値:
example.orgなどの静的フィールドに設定できます。オリジンサーバーアドレスを SNI として使用するには、
ali_follow_originに設定します。オリジンホストを SNI として使用するには、
ali_follow_hostに設定します。
example.orgkeepalive_sni
String
いいえ
持続的接続の SNI マッチングを有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
説明有効にすると、異なるオリジン SNI に対して異なる持続的接続が使用されます。
/
設定例 1:ユーザーリクエストがオリジンサーバー
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" }設定例 2:すべてのオリジンサーバー (
allで表される) へのユーザーリクエストは、同じ SNI 値host.example.comを使用します。{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "sni_host", "argValue": "host.example.com" }], "functionName":"origin_sni" }], "DomainNames":"example.com" }設定例 3:すべてのオリジンサーバー (
allで表される) へのユーザーリクエストは、オリジンサーバーアドレスを SNI 値として使用します (パラメーター値ali_follow_originで表される)。{ "Functions": [{ "functionArgs": [{ "argName": "origin", "argValue": "all" }, { "argName": "sni_host", "argValue": "ali_follow_origin" }], "functionName": "origin_sni" }], "DomainNames": "example.com" }設定例 4:すべてのオリジンサーバー (
allで表される) へのユーザーリクエストは、back-to-origin ホストを 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
はい
オリジンサーバー情報。フォーマット:OriginAddress_Priority_Weight_Port。異なるパラメーター値はアンダースコア (_) で区切ります。複数のオリジンサーバーはコンマ (,) で区切ります。
オリジンアドレス: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
いいえ
back-to-origin リトライをトリガーするステータスコード。現在、4xx、5xx、404、404-or-5xx、4xx-or-5xx の 5 つの値のみがサポートされています。いずれか 1 つを設定します。
404-or-5xx
failback_source
String
いいえ
バックアップソースの基本情報を指定します。有効な値:
on:オリジングループ内のすべてのオリジンサーバーが利用できない場合、基本設定 - オリジン情報セクションのオリジンサーバーアドレスが使用されます。
off:オリジングループ内のすべてのオリジンサーバーが利用できない場合、オリジンサーバーが利用できないことを示す 5xx ステータスコードがクライアントに返されます。
on
説明オリジンフェッチリトライロジック:
リトライ回数:back-to-origin をリトライする回数。
リトライは、同じオリジングループ内の異なる 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 の 5 つの値のみがサポートされています。いずれか 1 つを設定できます。
`retry_status_rule` を設定した後も、デフォルトの 5xx ステータスコードは有効です。たとえば、`404` を設定した場合、CDN ノードは 404 または 5xx ステータスコードを受信するとリトライします。
back-to-origin リトライ順序:リトライは、同じオリジングループ内の IP アドレスの優先度の降順で試行されます。
back-to-origin タイムアウトシナリオ:オリジンサーバーがリトライステータスコードをアクティブに応答した場合、CDN ノードはリクエストをリトライします。オリジンサーバーがリトライステータスコードで応答しない場合、CDN ノードはタイムアウト処理プロセスに従い、タイムアウト期間が経過した後にリクエストをリトライします。
オリジン TCP 接続タイムアウト: 10 秒。
オリジン書き込みタイムアウト:30 秒。これは、オリジンサーバーとの接続が確立された後のコンテンツ書き込みのタイムアウトです。
オリジン読み取りタイムアウト:30 秒。このタイムアウトは、オリジンサーバーが指定された期間内に CDN ノードによって要求された完全なコンテンツを送信できなかった場合に発生します。
オリジン探査ロジック:
異常なレイヤー 4 接続:CDN ノードがオリジン IP アドレスとのレイヤー 4 接続を確立できなかった場合、そのオリジン IP アドレスをデッドテーブルに追加します。後続の back-to-origin リクエストはこのオリジン IP アドレスにアクセスしません。CDN ノードは、5 秒ごとにレイヤー 4 でオリジン IP アドレスを探査します。接続が正常に確立されると、オリジン IP アドレスは利用可能リストに復元されます。
正常なレイヤー 4 接続:CDN ノードがオリジン IP アドレスと正常なレイヤー 4 接続を持っているが、オリジンサーバーからリトライステータスコード (5xx など) を受信した場合、リトライロジックがトリガーされます。ただし、オリジン IP アドレスは利用可能リストに残り、次のアクセスリクエストは重みに基づいてこのオリジンサーバーに送信されます。つまり、レイヤー 4 接続が正常な場合、レイヤー 7 の例外ではオリジン 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 経由の back-to-origin を設定します。詳細については、「IPv6 経由の back-to-origin の設定」をご参照ください。
関数 ID (FunctionID/FuncId):265
パラメーター:
パラメーター
タイプ
必須
説明
例
enable
String
はい
IPv6 経由の back-to-origin を有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
説明IPv6 経由の back-to-origin を有効にすると、CDN は back-to-origin に IPv6 サービスを提供します。
CDN の POP (Point of Presence) とオリジンサーバーの両方に利用可能な IPv6 アドレスがある場合、IPv6 接続が確立されます。
次のシナリオでは、IPv4 接続が確立されます:
CDN の POP に利用可能な IPv6 アドレスがない。
オリジンサーバーに利用可能な IPv6 アドレスがありません。
CDN の POP とオリジンサーバーのどちらにも利用可能な IPv6 アドレスがない。
on
follow
String
はい
back-to-origin がクライアント IP プロトコルバージョンに従う機能を有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
説明この機能を有効にすると、CDN の back-to-origin はクライアントリクエストで使用される IP プロトコルバージョンに従います。
クライアントリクエストが IPv6 を使用する場合、CDN は IPv6 オリジンサーバーからのフェッチを優先します。IPv6 オリジンサーバーが利用できない場合は、IPv4 オリジンサーバーが使用されます。
クライアントリクエストが IPv4 を使用する場合、CDN は IPv4 オリジンサーバーからのフェッチを優先します。IPv4 オリジンサーバーが利用できない場合は、IPv6 オリジンサーバーが使用されます。
on
ipv6_v4_mix_used
文字列
いいえ
「オリジン IPv4/IPv6 アドレスポーリング」を有効にするかどうかを指定します。有効な値:
on:有効化。
off:無効化。
説明「オリジン IPv4/IPv6 アドレスポーリング」機能は、「IPv6 経由の back-to-origin」および「クライアント IP プロトコルバージョンに従う」機能と相互に排他的です。「オリジン IPv4/IPv6 アドレスポーリング」が有効になると、他の 2 つの機能は無効になります。
「オリジン IPv4/IPv6 アドレスポーリング」機能は、クライアントリクエストが IPv4 または IPv6 を使用するかどうか、またオリジンサーバーが持つ IPv4 または IPv6 アドレスの数に関係なく、back-to-origin リクエストがポーリング方式ですべてのオリジンサーバーアドレスに分散されることを保証します。
IPv4 および IPv6 アドレスに重みが設定されている場合、back-to-origin リクエストは重み比率に従って分散されます。
オフ
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" },{ "argName": "follow", "argValue": "on" }], "functionName": "ipv6_origin" }], "DomainNames": "example.com" }
cos_auth
説明:Tencent Cloud COS の認証バケットを設定します。
関数 ID (FunctionID/FuncId):288。
パラメーター:
パラメーター
タイプ
必須
説明
例
enable
String
はい
Tencent Cloud COS 認証バケットを有効にするかどうかを指定します。有効な値:
on:有効化。
Off:システムのシャットダウンを示します。
on
cos_valid_period
String
いいえ
認証署名の有効期間。単位:秒。指定しない場合、デフォルト値は 3600 秒です。
/
cos_secret_id
String
はい
Tencent Cloud の認証 ID。
123456789
cos_secret_key
String
はい
Tencent Cloud の認証キー。
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 からコンテンツをフェッチするための認証バケット情報を設定します。
関数 ID (FunctionID/FuncId):10。
注:高速化ドメイン名に OSS オリジンサーバーを設定すると、プラットフォームは自動的に `oss_auth` 設定を追加します。この設定を追加または削除しないでください。この設定を削除すると、CDN から OSS への back-to-origin トラフィックに対する課金免除が適用されない場合があります。プライベート OSS バケットの認証が有効になっている場合、この設定を削除すると、back-to-origin リクエストの認証が失敗します。
パラメーター:
パラメーター
タイプ
必須
説明
例
oss_bucket_id
String
はい
OSS バケットのパブリックドメイン名。
cdn-test.oss-cn-hongkong.aliyuncs.com
oss_pri_buckets
String
はい
OSS バケットのパブリックドメイン名とそれに対応するバケット名。
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
説明:ファイルのキャッシュ有効期限を設定します。 詳細については、「CDN キャッシュの有効期限の設定」をご参照ください。
関数 ID (FunctionID/FuncId):6。
パラメーター:
パラメーター
タイプ
必須
説明
例
ttl
Integer
はい
キャッシュ期間。 単位:秒。 有効な値:1~99999999 (3 年強)。
500000
file_type
文字列
はい
ファイル形式。 大文字と小文字が区別されます。 複数のファイル形式はコンマ (,) で区切ります。 例:jpg,txt。
jpg
weight
Integer
いいえ
重み。 有効な値:1~99。
説明デフォルト値は 1 です。 数値が大きいほど優先度が高くなります。
1
swift_origin_cache_high
文字列
いいえ
オリジンサーバーのキャッシュポリシーを優先します。 有効にすると、オリジンサーバーがキャッシュ関連のヘッダー (Cache-Control、Pragma など) で応答した場合、オリジンサーバーのキャッシュポリシーが優先されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
swift_no_cache_low
文字列
いいえ
オリジンサーバーの no-cache レスポンスヘッダーを無視します。 有効にすると、オリジンサーバーからの次のレスポンスヘッダーは無視されます (すべてキャッシュなしを示します):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
有効な値:
on:有効化
off (デフォルト):無効化
off
swift_follow_cachetime
文字列
いいえ
クライアントは CDN キャッシュポリシーに従います。 有効にすると、最終的に有効な CDN キャッシュポリシーがクライアントに送信されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
force_revalidate
文字列
いいえ
TTL が 0 の場合にコンテンツの検証を強制します。 有効な値:
on:有効化。 TTL が 0 の場合、コンテンツは CDN POP にキャッシュでき、各リクエストはオリジンフェッチでキャッシュされたコンテンツを検証する必要があります。
off (デフォルト):無効化。 TTL が 0 の場合、CDN POP はコンテンツをキャッシュせず、各リクエストはオリジンフェッチでコンテンツを再度取得する必要があります。
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" },{ "argName": "force_revalidate", "argValue": "off" }], "functionName": "filetype_based_ttl_set" }], "DomainNames": "example.com" }
path_based_ttl_set
フォルダーのキャッシュ有効期限を設定します。 詳細については、「CDN キャッシュの有効期限の設定」をご参照ください。
関数 ID (FunctionID/FuncId):7。
パラメーター:
パラメーター
タイプ
必須
説明
例
ttl
Integer
はい
キャッシュ期間。 単位:秒。 有効な値:1~99999999 (3 年強)。
500000
path
文字列
はい
ディレクトリ。 スラッシュ (/) で始まる必要があります。
/example/demo
weight
Integer
いいえ
重み。 有効な値:1~99。
説明デフォルト値は 1 です。 数値が大きいほど優先度が高くなります。
1
swift_origin_cache_high
文字列
いいえ
オリジンサーバーのキャッシュポリシーを優先します。 有効にすると、オリジンサーバーがキャッシュ関連のヘッダー (Cache-Control、Pragma など) で応答した場合、オリジンサーバーのキャッシュポリシーが優先されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
swift_no_cache_low
文字列
いいえ
オリジンサーバーの no-cache レスポンスヘッダーを無視します。 有効にすると、オリジンサーバーからの次のレスポンスヘッダーは無視されます (すべてキャッシュなしを示します):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
有効な値:
on:有効化
off (デフォルト):無効化
off
swift_follow_cachetime
文字列
いいえ
クライアントは CDN キャッシュポリシーに従います。 有効にすると、最終的に有効な CDN キャッシュポリシーがクライアントに送信されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
force_revalidate
文字列
いいえ
TTL が 0 の場合にコンテンツの検証を強制します。 有効な値:
on:有効化。 TTL が 0 の場合、コンテンツは CDN POP にキャッシュでき、各リクエストはオリジンフェッチでキャッシュされたコンテンツを検証する必要があります。
off (デフォルト):無効化。 TTL が 0 の場合、CDN POP はコンテンツをキャッシュせず、各リクエストはオリジンフェッチでコンテンツを再度取得する必要があります。
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" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "path_based_ttl_set" }], "DomainNames": "example.com" }
filetype_force_ttl_code
ステータスコードの有効期限を設定します。 詳細については、「ステータスコードの有効期限の設定」をご参照ください。
関数 ID (FunctionID/FuncId):63。
パラメーター:
パラメーター
タイプ
必須
説明
例
file_type
文字列
はい
ファイル形式。 大文字と小文字が区別されます。 複数のファイル形式はコンマ (,) で区切ります。 例:jpg,txt。
jpg
code_string
文字列
はい
ステータスコードとそのキャッシュ期間。 単位:秒。 有効な値:1~99999999 (3 年強)。 複数のエントリはコンマ (,) で区切ります。 例:302=0,301=0,4xx=2。
403=10
swift_code_origin_cache_high
文字列
いいえ
オリジンサーバーのキャッシュポリシーを優先します。 有効にすると、オリジンサーバーがキャッシュ関連のヘッダー (Cache-Control、Pragma など) で応答した場合、オリジンサーバーのキャッシュポリシーが優先されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
swift_code_no_cache_low
文字列
いいえ
オリジンサーバーの no-cache レスポンスヘッダーを無視します。 有効にすると、オリジンサーバーからの次のレスポンスヘッダーは無視されます (すべてキャッシュなしを示します):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
有効な値:
on:有効化
off (デフォルト):無効化
off
swift_code_follow_cachetime
文字列
いいえ
クライアントは CDN キャッシュポリシーに従います。 有効にすると、最終的に有効な CDN キャッシュポリシーがクライアントに送信されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
force_revalidate
文字列
いいえ
TTL が 0 の場合にコンテンツの検証を強制します。 有効な値:
on:有効化。 TTL が 0 の場合、コンテンツは CDN POP にキャッシュでき、各リクエストはオリジンフェッチでキャッシュされたコンテンツを検証する必要があります。
off (デフォルト):無効化。 TTL が 0 の場合、CDN POP はコンテンツをキャッシュせず、各リクエストはオリジンフェッチでコンテンツを再度取得する必要があります。
off
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "file_type", "argValue": "jpg" }, { "argName": "code_string", "argValue": "403=10" }, { "argName": "swift_code_origin_cache_high", "argValue": "off" }, { "argName": "swift_code_no_cache_low", "argValue": "off" }, { "argName": "swift_code_follow_cachetime", "argValue": "off" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "filetype_force_ttl_code" }], "DomainNames": "example.com" }
path_force_ttl_code
説明:この機能を使用すると、パスのステータスコードの有効期限を設定できます。 詳細については、「ステータスコードの有効期限の設定」をご参照ください。
関数 ID (FunctionID/FuncId):65。
パラメーター:
パラメーター
タイプ
必須
説明
例
path
文字列
はい
ディレクトリ。 スラッシュ (/) で始まる必要があります。 例:/image。
/example/demo
code_string
文字列
はい
ステータスコードとそのキャッシュ期間。 単位:秒。 有効な値:1~99999999 (3 年強)。 複数のエントリはコンマ (,) で区切ります。 例:302=0,301=0,4xx=2。
403=10,404=15
swift_code_origin_cache_high
文字列
いいえ
オリジンサーバーのキャッシュポリシーを優先します。 有効にすると、オリジンサーバーがキャッシュ関連のヘッダー (Cache-Control、Pragma など) で応答した場合、オリジンサーバーのキャッシュポリシーが優先されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
swift_code_no_cache_low
文字列
いいえ
オリジンサーバーの no-cache レスポンスヘッダーを無視します。 有効にすると、オリジンサーバーからの次のレスポンスヘッダーは無視されます (すべてキャッシュなしを示します):
Cache-Control: no-store
Cache-Control: no-cache
Cache-Control: max-age=0
Pragma: no-cache
有効な値:
on:有効化
off (デフォルト):無効化
off
swift_code_follow_cachetime
文字列
いいえ
クライアントは CDN キャッシュポリシーに従います。 有効にすると、最終的に有効な CDN キャッシュポリシーがクライアントに送信されます。 有効な値:
on:有効化
off (デフォルト):無効化
off
force_revalidate
文字列
いいえ
TTL が 0 の場合にコンテンツの検証を強制します。 有効な値:
on:有効化。 TTL が 0 の場合、コンテンツは CDN POP にキャッシュでき、各リクエストはオリジンフェッチでキャッシュされたコンテンツを検証する必要があります。
off (デフォルト):無効化。 TTL が 0 の場合、CDN POP はコンテンツをキャッシュせず、各リクエストはオリジンフェッチでコンテンツを再度取得する必要があります。
off
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "path", "argValue": "/example/demo" }, { "argName": "code_string", "argValue": "403=10,404=15" }, { "argName": "swift_code_origin_cache_high", "argValue": "off" }, { "argName": "swift_code_no_cache_low", "argValue": "off" }, { "argName": "swift_code_follow_cachetime", "argValue": "off" }, { "argName": "force_revalidate", "argValue": "off" }], "functionName": "path_force_ttl_code" }], "DomainNames": "example.com" }
default_ttl_code
説明:ステータスコードの有効期限 (オリジン優先) を設定します。 コンソールでの設定手順については、「ステータスコードの有効期限の設定 (オリジン優先)」をご参照ください。
関数 ID (FunctionID/FuncId):207。
パラメーター:
パラメーター
タイプ
必須
説明
例
default_ttl_code
文字列
はい
ステータスコードとそのキャッシュ期間。 単位:秒。 有効な値: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 レスポンスヘッダーを設定します。詳細については、「アウトバウンドレスポンスヘッダーを変更する」をご参照ください。
関数 ID (FunctionID/FuncId):27。
パラメーター:
パラメーター
タイプ
必須
説明
例
key
文字列
はい
レスポンスヘッダー。
Cache-Control
value
文字列
はい
レスポンスヘッダーの値。複数の値はコンマ (,) で区切ります。
説明レスポンスヘッダーを削除する場合は、その値を null に設定します。
no-cache
header_operation_type
文字列
いいえ
リクエストヘッダーの操作。 有効な値:
add: アイテムを追加します。
Delete:削除します。
modify:項目に変更を加えます。
Rewrite:置き換えます。
add
duplicate
文字列
いいえ
既に存在する名前のリクエストヘッダーの追加を許可するかどうかを指定します。 このパラメーターは、header_operation_type が add に設定されている場合に必須です。
on:重複を許可します。
off:重複を許可しません。
off
header_source
文字列
いいえ
置き換えるパラメーター値。 このパラメーターは、header_operation_type が rewrite に設定されている場合に必須です。 値には正規表現を使用できます。
value1
header_destination
文字列
いいえ
パラメーターの新しい値。 header_operation_type が rewrite に設定されている場合に、このパラメーターを設定します。
value123
match_all
文字列
いいえ
header_operation_type が rewrite に設定されている場合に、置換操作で使用する一致パターンを指定します:
on:一致したすべての値を置き換えます。
off:最初に一致した値のみを置き換えます。
/
access_origin_control
文字列
いいえ
クロスドメイン検証:
on:CDN POP でクロスドメイン検証を有効にします。
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
文字列
はい
リダイレクトページ。
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 (FuncId):43。
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
regex
文字列
はい
書き換える URI。 URI はスラッシュ (/) で始まる必要があり、http:// プレフィックスやドメイン名を含めることはできません。 PCRE (Perl 互換正規表現) がサポートされています。 例:^/hello$。
^/hello$
replacement
文字列
はい
実行ルールが「中断」に設定されている場合、スラッシュ (/) で始まるパスのみがサポートされます。 パスにプロトコルプレフィックスやドメイン名を含めることはできません。 実行ルールが「リダイレクト」に設定されている場合、パスにプロトコルプレフィックスとドメイン名を含めることができます。 PCRE がサポートされています。 たとえば、$1 と $2 を使用して、書き換えたいパスの括弧内の文字列をキャプチャします。
/hello/test
flag
文字列
いいえ
URI が書き換えられた後に CDN POP が実行する操作を指定します。 有効な値:
空:デフォルト値。 これは、flag パラメーターが渡されないことを意味します。 複数のルールを設定し、リクエスト URL がルールに一致する場合、現在のルールが実行された後、POP は後続のルールとの照合を続行します。
break:リクエスト URL がルールに一致する場合、リクエストは宛先 URL に書き換えられます。 元の URI のパラメーターは変更されません。 現在のルールが実行された後、POP は他のルールとの照合を停止します。
redirect:リクエスト URL がルールに一致する場合、リクエストは 302 ステータスコードで宛先 URL にリダイレクトされます。 POP は宛先 URL を Location 情報としてクライアントに返します。 元の URI のパラメーターは変更されません。 現在のルールが実行された後、POP は後続のルールとの照合を続行します。
enhance_break:break と似ていますが、この操作はパラメーターを含む URL 全体を変更します。
enhance_redirect:redirect と似ていますが、この操作はパラメーターを含む URL 全体を変更します。
説明実行ルールが異なれば、使用される書き換えメソッドも異なります。 また、書き換えられた URL が他のドメイン名やプロトコルをサポートしているかどうかも異なります:
空、break、および enhance_break は、リクエスト URL を直接書き換えます。 他のドメイン名やプロトコルへの書き換えはサポートしていません。 たとえば、URL を HTTP から HTTPS に書き換えることはできません。
redirect および enhance_redirect は、302 リダイレクトメソッドを使用して URL の書き換えを実装します。 このメソッドは、他のドメイン名や他のプロトコルへの書き換えをサポートしています:
302 Location アドレスは、現在の高速化ドメイン名以外のドメイン名に設定できます。 たとえば、example.com ドメイン名を使用する元の URL は、aliyundoc.com などの新しいドメイン名を使用するように書き換えることができます。
302 Location アドレスは他のプロトコルをサポートしています。 たとえば、HTTP プロトコルを使用する元の URL は、HTTPS プロトコルを使用するように書き換えることができます。
redirect
rewrite_method
文字列
いいえ
リダイレクトメソッド。 サポートされているステータスコードは 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:227。
パラメーター:
パラメーター
タイプ
必須
説明
値の例
uri
文字列の配列
いいえ
ソース URI を宛先 URI に書き換え、宛先 URI をキャッシュキーとして使用します。
uri_to_rewrite:ソース URI。
ai_uri_regex:宛先 URI。
[{"uri_to_rewrite":"/hello","ai_uri_regex":"/hello/test"}]args
文字列の配列
いいえ
リクエスト内のパラメーターを追加、削除、変更、または保持し、その結果をキャッシュキーとして保存します。 値は次のパラメーターで構成されます:
args_operation_type:パラメーターに対して実行する操作のタイプ。 有効な値は add、delete、modify、keep です。
args:操作のパラメーター値。
[{"args":"test=123","args_operation_type":"add"}]headers
文字列
いいえ
スペースで区切られた複数の HTTP ヘッダーをキャッシュキーに追加します。
example
variable
文字列の配列
いいえ
カスタム変数は、正規表現を使用してリクエストパラメーター、HTTP ヘッダー、Cookie、または URI から任意のフィールドを抽出し、それをキャッシュキーに追加します。
[]
設定例:
{ "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
文字列
はい
現在のドメイン名とキャッシュを共有できるターゲットドメイン名。 この設定は、オリジンフェッチリクエストの Host ヘッダーを変更しません。 キャッシュされたリソースが照会されると、システムは share_host の値を使用してキャッシュキーを生成します。
example.com
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "share_host", "argValue": "example.com" }], "functionName": "rewrite_host" }], "DomainNames": "example.com" }
serving_stale_content
説明:オリジンサーバーが利用不可またはエラーを返した場合に、キャッシュから古いコンテンツを提供します。
関数 ID:260
パラメーター:
パラメーター
タイプ
必須
説明
例
origin_error_status_code
文字列
いいえ
この機能をトリガーするオリジンサーバーのエラーステータスコードを指定します。
機能説明:この機能をトリガーするオリジンサーバーからのステータスコードを指定します。
デフォルト値:指定なし。 デフォルトでは、オリジンサーバーのエラーにはタイムアウトとすべての 5xx ステータスコードが含まれます。
設定:ワイルドカード一致の場合は 4xx または 5xx を入力します。 完全一致の場合は、502 や 504 などの特定のステータスコードを入力することもできます。 複数のステータスコードを入力するには、コンマで区切ります。
502
extend_expiration_time
Integer
いいえ
有効期限が切れた後に古いキャッシュコンテンツを保持する最大時間。
機能説明:キャッシュの有効期限が切れた後にキャッシュを保持する最大期間。
延長有効期限のデフォルト値は 1 時間です。
1 以上の整数を入力します。 単位は秒です。
60
origin_first
文字列
いいえ
オリジンサーバーからのキャッシュポリシーを優先するかどうかを指定します。
説明:このパラメーターが 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
文字列
いいえ
HTTP/2 を有効にするかどうかを指定します。
on:設定を有効にします。
off:無効状態です。
on
ocsp_stapling
文字列
いいえ
Online Certificate Status Protocol (OCSP) 機能を有効にするかどうかを指定します。
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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
関数 ID (FunctionID/FuncId):45
パラメーター:
パラメーター
タイプ
必須
説明
例
enable
文字列
はい
HTTP リダイレクトを強制します:
on: 機能を有効にします。
off: 機能を無効にします。
on
http_rewrite
文字列
いいえ
リダイレクトメソッド。有効な状態コードは 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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
関数 ID (FunctionID/FuncId):44
パラメーター:
パラメーター
タイプ
必須
説明
例
enable
文字列
はい
HTTPS への強制リダイレクトを有効にするかどうかを指定します。
on:機能を有効にします。
off: 機能を無効にします。
on
https_rewrite
文字列
いいえ
リダイレクトメソッド。有効なステータスコードは 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
文字列
いいえ
TLSv1.0 を有効にするかどうかを指定します。
on (デフォルト): バージョンを有効にします。
off:無効。
on
tls11
文字列
いいえ
TLSv1.1 を有効にするかどうかを指定します。
on (デフォルト):バージョンを有効にします。
off:無効状態を示します。
on
tls12
文字列
いいえ
TLSv1.2 を有効にするかどうかを指定します。
on (デフォルト): バージョンを有効にします。
off:無効。
on
tls13
文字列
いいえ
TLSv1.3 を有効にするかどうかを指定します。
on (デフォルト)
off:無効状態を示します。
on
ciphersuitegroup
文字列
いいえ
暗号スイートグループ。
all (デフォルト): すべての暗号スイート。
strict: 強力な暗号スイート。
custom: カスタム暗号スイート。
all
文字列
いいえ
暗号スイート。 このパラメーターは、ciphersuitegroup が custom に設定されている場合に使用されます。 複数の暗号スイートを指定できます。 コンマ (,) で区切ります。
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
設定例:
デフォルト設定:TLSv1.0、TLSv1.1、TLSv1.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" }TLSv1.2 と TLSv1.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" }TLSv1.2 と TLSv1.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" }
https_client_cert
説明:クライアント認証証明書を設定します。 詳細については、「クライアント認証証明書」をご参照ください。
関数 ID (FunctionID/FuncId):111
パラメーター:
パラメーター
タイプ
必須
説明
例
client_certificate_verify
String
はい
クライアント証明書認証を有効にするかどうかを指定します。
on:機能を有効にします。
off:機能を無効にします。
onclient_certificate
String
はい
自己署名クライアント証明書 (公開鍵)。 CA 証明書は、次のフォーマット要件を満たす必要があります:
-----BEGIN CERTIFICATE-----で始まり、-----END CERTIFICATE-----で終わります。
-----BEGIN PUBLIC KEY-----***********-----END PUBLIC KEY-----client_verify_depth
String
いいえ
認証深度。証明書チェーンの深さとも呼ばれます。 このパラメーターは、クライアント証明書の認証に使用される信頼チェーン内の証明書レベルの数を指定します。 深さは、クライアント証明書自体からルート CA 証明書までのレベル数です。 デフォルト値は 1 です。
1設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "client_certificate_verify", "argValue": "on" }, { "argName": "client_certificate", "argValue": "-----BEGIN PUBLIC KEY-----***********-----END PUBLIC KEY-----" }], "functionName": "https_client_cert" }], "DomainNames": "example.com" }
HSTS
説明:この機能は、HTTP Strict Transport Security (HSTS) を設定するために使用されます。 詳細な設定手順については、「HSTS の設定」をご参照ください。
関数 ID (FunctionID/FuncId):112
パラメーター
パラメーター
タイプ
必須
説明
例
有効
文字列
はい
HSTS を有効にするかどうかを指定します。
on:機能を有効にします。
off:機能を無効にします。
オン
https_hsts_max_age
整数
はい
有効期限 (秒)。
説明5184000 秒 (60 日) の値を推奨します。
5184000
https_hsts_include_subdomains
文字列
いいえ
HSTS ヘッダーにサブドメインを含めるかどうかを指定します。 有効な値は on と off です。
説明このパラメーターを有効にする前に、高速化ドメイン名のすべてのサブドメインで HTTPS が有効になっていることを確認してください。 そうしないと、サブドメインは HTTPS に自動的にリダイレクトされた後、アクセスできなくなります。
オフ
設定例:
{ "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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
機能 ID (FunctionID/FuncId): 1。
パラメーター:
パラメーター
タイプ
必須
説明
例
refer_domain_allow_list
String
はい
ホワイトリスト。 複数のドメイン名をコンマ (,) で区切ります。
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
いいえ
空の Referer ヘッダーを持つリクエストが CDN リソースにアクセスできるかどうかを指定します。 有効な値:
on: アクセスを許可します。
off (デフォルト): アクセスを拒否します。
off
redirect_url
String
いいえ
リダイレクト URL。 ユーザーリクエストの Referer ヘッダーがホワイトリストと一致しない場合、リクエストはブロックされます。 CDN は 403 ステータスコードを返す代わりに、302 ステータスコードと Location ヘッダーを返します。 このパラメーターは Location ヘッダーの値を指定します。 URL は `http://` または `https://` で始まる必要があります。
http://www.example.comdisable_ast
String
いいえ
完全一致パターンを使用して、ホワイトリスト内のドメイン名が完全一致を必要とするかどうかを指定します。 このオプションが選択されている場合 (on)、完全なドメイン名の一致のみが許可されます。
値が `on` の場合:
完全一致がサポートされます。
ホワイトリストに
example.comを入力すると、example.comに一致します。ホワイトリストに
a*b.example.comを入力すると、a<any characters>b.example.comに一致します。
サフィックス一致はサポートされません。
値が `off` (デフォルト) の場合:
完全一致はサポートされません。
サフィックス一致がサポートされます。
ホワイトリストに
example.comを入力すると、example.comと<any characters>.example.comに一致します。ホワイトリストに
a*b.example.comを入力すると、a<any characters>b.example.comと<any characters>.a<any characters>b.example.comに一致します。
off
ignore_scheme
String
いいえ
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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
機能 ID (FunctionID/FuncId): 5。
パラメーター:
パラメーター
タイプ
必須
説明
例
refer_domain_deny_list
String
はい
ブラックリスト。 複数のドメイン名をコンマ (,) で区切ります。
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
いいえ
空の Referer ヘッダーを持つリクエストが CDN リソースにアクセスできるかどうかを指定します:
on: アクセスを許可します。
off: アクセスを拒否します。
off
redirect_url
String
いいえ
リダイレクト URL。 ユーザーリクエストの Referer ヘッダーがブラックリストと一致する場合、リクエストはブロックされます。 CDN は 403 ステータスコードを返す代わりに、302 ステータスコードと Location ヘッダーを返します。 このパラメーターは Location ヘッダーの値を指定します。 URL は `http://` または `https://` で始まる必要があります。
http://www.example.comdisable_ast
String
いいえ
ブラックリスト内のドメイン名に対して完全一致を有効にするかどうかを指定します。 このパラメーターを `on` に設定すると、完全一致が有効になります。
値が `on` の場合:
完全一致がサポートされます。
ブラックリストに
example.comを追加すると、example.comと一致します。ブラックリストに
a*b.example.comを追加すると、a<any string>b.example.comと一致します。
サフィックス一致はサポートされません。
値が `off` (デフォルト) の場合:
完全一致はサポートされません。
サフィックス一致がサポートされます。
ブラックリストに
example.comを追加すると、example.comおよび<any string>.example.comと一致します。ブラックリストに
a*b.example.comを追加すると、a<any string>b.example.comおよび<any string>.a<any string>b.example.comと一致します。
off
ignore_scheme
String
いいえ
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 ファイルに署名情報を追加します。 有効な値は `on` (デフォルト) と `off` です。
on
auth_type
String
はい
署名タイプ。 有効な値:
no_auth:署名なし。
type_a: タイプ A 署名。
type_b: タイプ B 署名。
type_c: タイプ C 署名。
type_d: タイプ D 署名。
type_e: タイプ E 署名。
type_f: タイプ F 署名。
type_a
auth_key1
String
はい
暗号化キー 1。 キーは 16~128 文字の長さで、大文字、小文字、数字を含めることができます。
1234567890123456789
auth_key2
String
いいえ
暗号化キー 2。 キーは 16~128 文字の長さで、大文字、小文字、数字を含めることができます。
1234567890123456789
ali_auth_delta
Integer
いいえ
署名付き URL の有効期間。 デフォルト:1800。 単位:秒。
1800
req_auth_ip_white
String
いいえ
IP アドレスホワイトリスト。 このリスト内の IP アドレスは署名の対象外です。
複数の IP アドレスを入力できます。 コンマで区切ります。
192.168.0.1
req_auth_ip_acl_xfwd
String
いいえ
ホワイトリストのクライアント IP アドレスをフェッチするメソッド。 有効な値:
on:これはデフォルトモードです。 このモードでは、X-Forwarded-For ヘッダーの左端の最初の IP アドレスがチェックされます。 この IP アドレスは、クライアントの送信元 IP アドレスです。
off:このモードでは、クライアントが CDN の POP (Point of Presence) との接続を確立するために使用する IP アドレスがチェックされます。
all: 次の両方の IP アドレスがチェックされます:
X-Forwarded-For ヘッダーの左端の最初の IP アドレス。これはクライアントの送信元 IP アドレスです。
クライアントが CDN POP との接続を確立するために使用する IP アドレス。
all
sign_param
String
いいえ
署名パラメーターの名前。 このパラメーターは、`auth_type` が `type_f` に設定されている場合にのみ有効です。
sign
time_param
String
いいえ
タイムスタンプパラメーターの名前。 このパラメーターは、`auth_type` が `type_f` に設定されている場合にのみ有効です。
time
time_format
String
いいえ
タイムスタンプフォーマット。 このパラメーターは、`auth_type` が `type_f` に設定されている場合にのみ有効です。
dec: 10 進数
hex: 16 進数
hec
path_encoding
String
いいえ
URL エンコーディングスイッチ。 有効な値は `on` と `off` です。 このパラメーターは、`auth_type` が `type_f` に設定されている場合にのみ有効です。
on
設定例:
タイプ A 署名
{ "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" }], "functionName": "aliauth" }], "domainNames": "example.com" }タイプ F 署名
{ "Functions": [{ "functionArgs": [{ "argName": "auth_type", "argValue": "type_f" },{ "argName": "auth_key1", "argValue": "1234567890123456789" },{ "argName": "auth_key2", "argValue": "1234567890123456789" },{ "argName": "ali_auth_delta", "argValue": 1800 },{ "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` とは異なります。
empty
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` と同じです。
empty
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。
403
remote_auth_timeout
Integer
はい
認証タイムアウト期間。 単位: ms。 最大値は 3000 です。
500
remote_auth_timeout_action
String
はい
認証がタイムアウトした場合に実行するアクション。 有効な値:
pass: CDN はユーザーリクエストを許可します。
reject:CDN は `remote_auth_fail_resp_code` をユーザーに返します。
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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
機能 ID (FunctionID/FuncId): 69。
パラメーター:
パラメーター
タイプ
必須
説明
例
ip_list
String
はい
IP アドレスリスト。 複数の IP アドレスまたは CIDR ブロックをコンマ (,) で区切ります。
192.168.0.1/24
customize_response_status_code
String
いいえ
カスタム応答ステータスコード。 デフォルト値は空で、応答ステータスコードが 403 であることを示します。 3 桁の数字を入力して、カスタム応答ステータスコードを設定できます。
429
ip_acl_xfwd
String
いいえ
X-Forwarded-For ヘッダーの IP アドレスを使用するかどうかを指定します。 有効な値:
on (デフォルト):ユーザーリクエストの
x-forwarded-forヘッダーの左端の最初の IP アドレスを使用します。off:
接続の送信元 IP アドレスを使用します。all:
x-forwarded-forヘッダーの IP アドレスと接続の送信元 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 API 操作を呼び出して、ドメイン名の指定された設定を削除できます。
機能 ID (FunctionID/FuncId): 13。
パラメーター:
パラメーター
タイプ
必須
説明
例
ip_list
String
はい
IP アドレスリスト。 複数の IP アドレスまたは CIDR ブロックをコンマ (,) で区切ります。
192.168.0.1
customize_response_status_code
String
いいえ
カスタム応答ステータスコード。 デフォルト値は空で、応答ステータスコードが 403 であることを示します。 3 桁の数字を入力して、カスタム応答ステータスコードを設定できます。
429
ip_acl_xfwd
String
いいえ
X-Forwarded-For ヘッダーの IP アドレスを使用するかどうかを指定します。 有効な値:
on (デフォルト):ユーザーリクエストの
x-forwarded-forヘッダーの左端の最初の IP アドレスを使用します。off:
接続の送信元 IP アドレスを使用します。all:
x-forwarded-forヘッダーの IP アドレスと接続の送信元 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: ホワイトリスト。
説明ブラックリストとホワイトリストは相互排他です。 一度にアクティブにできるのは 1 つだけです。
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
はい
HTML 最適化を有効にするかどうかを指定します:
on: 機能を有効にします。
off: 機能を無効にします。
on
trim_js
String
いいえ
HTML 内のインライン JavaScript (JS) コードを最適化するかどうかを指定します:
有効
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 (デフォルト):パラメーターを無視する機能を無効にします。パラメーターを保持、追加、または削除する機能は有効です。
説明キャッシュキーのすべてのパラメーターを無視する設定は、指定されたキャッシュパラメーターのリストを保持する設定よりも優先度が低くなります。
on
keep_oss_args
String
はい
オリジンフェッチリクエストのパラメーターを保持するかどうかを指定します:
on:オリジンフェッチリクエストのすべてのパラメーターを保持します。
off:オリジンフェッチリクエストのパラメーターは、キャッシュキーのパラメーターと同じです。
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
はい
削除するパラメーター。複数のパラメーターはスペースで区切ります。
説明残りのパラメーターは、キャッシュキーの URL 引数として使用されます。
test
keep_oss_args
String
はい
オリジンフェッチリクエストのパラメーターを保持するかどうかを指定します:
on:オリジンフェッチリクエストのすべてのパラメーターを保持します。
off:オリジンフェッチリクエストのパラメーターは、キャッシュキーのパラメーターと同じです。
off
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "ali_remove_args", "argValue": "test" }, { "argName": "keep_oss_args", "argValue": "off" }], "functionName": "ali_remove_args" }], "DomainNames": "example.com" }
image_transform
説明:Alibaba Cloud 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
説明:レンジベースのオリジンフェッチを設定します。詳細な手順については、「レンジベースのオリジンフェッチの設定」をご参照ください。
機能 ID (FunctionID または FuncId):31。
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
enable
文字列
はい
Range オリジンフェッチを有効にするかどうかを指定します。
on:この機能を有効にします。
off: 機能を無効にします。
force: 機能を強制的に有効にします。
on
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "range" }], "DomainNames": "example.com" }
video_seek
説明:この機能を使用すると、シーク再生を設定できます。詳細については、「シーク再生の設定」をご参照ください。
機能 ID (FunctionID または FuncId):30。
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
enable
文字列
はい
シーク再生を有効にするかどうかを指定します。
on:この機能を有効にします。
off:この機能を無効にします。
on
flv_seek_by_time
文字列
いいえ
時間による FLV ファイルのシークを有効にするかどうかを指定します。
on: 機能を有効にします。
off: 機能を無効にします。
on
mp4_seek_start
文字列
いいえ
MP4 ファイルのカスタム開始パラメーター。
mp4starttime
mp4_seek_end
文字列
いいえ
MP4 ファイルのカスタム終了パラメーター。
mp4endtime
flv_seek_start
文字列
いいえ
FLV ファイルのカスタム開始パラメーター。
flvstarttime
flv_seek_end
文字列
いいえ
FLV ファイルのカスタム終了パラメーター。
flvendtime
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "video_seek" }], "DomainNames": "example.com" }
ali_video_split
説明:オーディオおよびビデオのリッスン機能を設定します。詳細については、「オーディオおよびビデオのリッスンを設定する」をご参照ください。
機能 ID (FunctionID または FuncId):204。
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
enable
文字列
はい
音声のみのストリーミングを有効にするかどうかを指定します。
on: 機能を有効にします。
off: 機能を無効にします。
on
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "ali_video_split" }], "DomainNames": "example.com" }
ali_video_preview
音声・動画プレビューを設定できます。詳細については、「音声・動画プレビューの設定」をご参照ください。
機能 ID (FunctionID または FuncId):205。
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
enable
文字列
はい
音声・動画プレビューを有効にするかどうかを指定します。
on: 機能を有効にします。
off: 機能を無効にします。
説明この機能は TS および MP3 ファイル形式をサポートしています。FLV および MP4 ファイルの場合は、シーク再生機能を使用してください。
on
ali_video_preview_argument
文字列
はい
プレビュー期間のカスタムパラメーター名。このパラメーターの値は秒単位である必要があります。
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
文字列
はい
M3U8 暗号化と書き換えを有効にするかどうかを指定します。
on:この機能を有効にします。
off: 機能を無効にします。
on
hls_token_arg_name
文字列
いいえ
HLS トークンのカスタムパラメーター名。このパラメーターを設定しない場合、`MtsHlsUriToken` がパラメーター名として使用されます。
example
設定例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "hls_token_rewrite" }], "DomainNames": "example.com", }
レート制限
limit_rate
説明:単一リクエストのレート制限を設定します。
FuncId:72。
説明
ali_limit_rate を設定することで、リクエスト URL 内のパラメーターに基づいてリクエストレートを制限し、レート制限の開始時刻と終了時刻を設定できます。
traffic_limit_arg パラメーターと traffic_limit_unit パラメーターを組み合わせることで、リクエスト URL パラメーターに対するレート制限を実装できます。
ali_limit_start_hour パラメーターと ali_limit_end_hour パラメーターを使用して、レート制限の開始時刻と終了時刻を設定できます。
パラメーター
タイプ
必須
説明
例
ali_limit_rate
文字列
はい
単一リクエストのレート制限を Byte/s 単位で指定します。例:200 KByte/s または 1 MByte/s。値は、数値と単位 (k または m) の組み合わせです。
最小値は 100k です。100k 未満の値は 100k として扱われます。
1m:単一リクエストのレート制限は 1 MByte/s です。
100k:単一リクエストのレート制限は 100 KByte/s です。
ali_limit_rate_after
文字列
いいえ
レート制限が適用される前に送信するデータ量をバイト単位で指定します。このパラメーターは、数値と単位 (k または m) の組み合わせをサポートします。
1000
traffic_limit_arg
文字列
いいえ
リクエスト URL から取得するレート制限パラメーターの名前 (例:`rate`) を指定します。
リクエストにこのパラメーターが含まれていない場合、`ali_limit_rate` で指定されたデフォルトのレート制限が適用されます。リクエストにこのパラメーターがない場合にレート制限を無効にするには、`ali_limit_rate` を `0k` に設定します。
rate
traffic_limit_unit
文字列
いいえ
`traffic_limit_arg` パラメーターの単位。有効な値は `m` (MByte/s) と `k` (KByte/s) です。たとえば、このパラメーターを `m` に設定し、リクエスト URL に `rate=1` が含まれている場合、レート制限は 1 MByte/s になります。
最小レート制限は 100k です。計算されたレートが 100k 未満の場合、システムは 100k を使用します。
m
ali_limit_start_hour
整数
いいえ
レート制限が開始する時刻。値は 0 から 24 までの整数で、終了時刻より小さくする必要があります。デフォルト値は 0 です。
説明値は 24 時間形式の時刻を表します。たとえば、0 は 00:00:00 を、24 は 24:00:00 を表します。
20
ali_limit_end_hour
整数
いいえ
レート制限が終了する時刻。値は 0 から 24 までの整数で、開始時刻より大きくする必要があります。デフォルト値は 24 です。
23
例 1:単一リクエストのレート制限を 1 MByte/s に設定します。
{ "Functions": [{ "functionArgs": [{ "argName": "ali_limit_rate", "argValue": "1m" }], "functionName": "limit_rate" }], "DomainNames": "example.com" }例 2:単一リクエストのデフォルトのレート制限を 1 MByte/s に設定します。リクエスト URL に `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
説明: エッジスクリプト。詳細については、「エッジスクリプトの概要」をご参照ください。
関数 ID (FunctionID/FuncId): 180。
パラメーターの説明:
パラメーター
タイプ
必須
説明
例
rule
文字列
はい
DSL ルール。
if eq($uri, '/') {\n rewrite('https://example.com/index.html', 'redirect')\n}
pri
整数
はい
優先度。 有効な値: [0, 999]。 値が小さいほど、優先度が高くなります。
説明head と foot の位置にあるルールの優先度はそれぞれ独立しています。
0
enable
文字列
はい
ルールを有効にするかどうかを指定します。
on: ルールは有効です。
off: 機能を無効にします。
on
name
文字列
はい
ルール名。名前には、文字とアンダースコア (_) のみ使用できます。
test
pos
文字列
いいえ
ルールが実行される位置。 有効な値:
head (デフォルト): ルールはリクエスト処理フローの先頭で実行されます。
foot: ルールはリクエスト処理フローの最後で実行されます。
head
brk
文字列
いいえ
後続のルールの実行を停止するかどうかを指定します。有効な値:
on: このルールにヒットした場合、現在の実行位置にある後続のすべてのルールはスキップされます。
off (デフォルト): このルールにヒットした場合でも、後続のルールは実行されます。
オフ
option
文字列
いいえ
拡張フィールド。
空
grammar
文字列
いいえ
ルール構文。 有効な値: es2 (デフォルト) と js。
/
jsmode
文字列
いいえ
JavaScript (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" }
Edge Routine
edgeroutine
説明: Edge Routine。 詳細については、「Edge Routine とは」をご参照ください。
機能 ID (FunctionID/FuncId): 275。
この機能は申請ベースで利用可能です。 機能をご利用いただくには、するかチケットを送信してください。
ルールエンジン
condition
説明:ルールエンジンは、グラフィカルインターフェイスを通じて様々な条件付きルールを設定できる機能です。条件付きルールは、ユーザーリクエスト内のパラメーターを検出し、特定のリクエストに構成が適用されるかどうかを判断します。これにより、Alibaba Cloud Content Delivery Network (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」または「X-Forwarded-For (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` パラメーターをそのルール条件の `configid` に設定します。`configid` は、ルール条件を作成する際に生成されます。
関数が `condition` (ルールエンジン) の場合、`parentId` パラメーターはサポートされません。
QUIC
iquic
説明: QUIC の基本的なパラメーターを設定します。 詳細については、「QUIC プロトコルの設定」をご参照ください。
関数 ID (FunctionID/FuncId): 281
パラメーターの説明:
パラメーター
タイプ
必須
説明
値の例
iquic_enable
文字列
はい
QUIC プロトコルを有効にするかどうかを指定します:
on: プロトコルを有効にします。
off: 無効にします。
on設定例
{ "Functions": [{ "functionArgs": [{ "argName": "iquic_enable", "argValue": "on" }], "functionName": "iquic" }], "DomainNames": "example.com" }