BatchSetVodDomainConfigs操作を呼び出して、一度に複数のドメイン名の機能を設定できます。 このトピックでは、この操作を呼び出すことで構成できる機能と、この操作を呼び出すときに指定する必要があるパラメーターについて説明します。
このトピックで説明する機能は、次のAPI操作を呼び出すときに参照できます。BatchSetVodDomainConfigsおよびDescribeVodDomainConfigs。
基本設定
ipv6
機能の説明: IPv6を設定します。 詳細については、「IPv6の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
スイッチ
String
必須
IPv6を有効にするかどうかを指定します。
on
off
on
region
String
必須
IPv6を有効にするリージョン。
説明アスタリスク (*) を入力して、すべてのリージョンを指定できます。 特定のリージョンでIPv6を有効にする場合は、チケットを起票してください。
このパラメーターを空のままにすると、すべてのリージョンでIPv6が有効になります。
*
サンプルコード:
{ "Functions": [{ "functionArgs": [{ "argName": "switch", "argValue": "on" }, { "argName": "region", "argValue": "*" }], "functionName": "ipv6" }], "DomainNames": "example.com" }
Back-to-originの設定
set_req_host_ヘッダー
機能の説明: デフォルトのオリジンホストを構成します。 詳細については、「オリジンホストの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
domain_name
String
必須
オリジンホスト。
example.com例:
{ "Functions": [{ "functionArgs": [{ "argName": "domain_name", "argValue": "example.com" }], "functionName": "set_req_host_header" }], "DomainNames": "example.com" }
forward_scheme
機能の説明: オリジンプロトコルポリシーを設定します。 詳細については、「オリジンプロトコルポリシーの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
オリジンプロトコルポリシーを有効にするかどうかを指定します。 有効な値:
on
off
on
scheme_origin
String
任意
オリジンフェッチのプロトコル。 有効な値:
http: Alibaba Cloud CDNは、HTTP経由でオリジンサーバーにリクエストをリダイレクトします。
https: Alibaba Cloud CDNはHTTPS経由でオリジンサーバーにリクエストをリダイレクトします。
以下: クライアントがHTTPまたはHTTPSを使用してリソースをリクエストする場合、Alibaba Cloud CDNはクライアントが使用するプロトコルを使用してリクエストをオリジンサーバーにリダイレクトします。
説明デフォルト値: follow。
フォロー
scheme_origin_port
String
任意
カスタムオリジンポート。 このパラメーターは、scheme_originパラメーターと一緒に使用する必要があります。 有効な値:
scheme_originがhttpに設定されている場合、80などのオリジンHTTPポートを設定するだけで済みます。
scheme_originがhttpsに設定されている場合、443などのオリジンHTTPSポートを設定するだけで済みます。
scheme_originがに従うように設定されている場合、オリジンHTTPおよびHTTPSポートを設定する必要があります。 コロン (:) でポートを区切ります。 例: 80:443。
80:443
サンプルコード:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }, { "argName": "scheme_origin", "argValue": "follow" }], "functionName": "forward_scheme" }], "DomainNames": "example.com" }
l2_oss_キー
機能の説明: プライベートObject Storage Service (OSS) バケットのアクセス制御を設定します。 詳細については、「プライベートOSSバケットへのアクセスの有効化」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
private_oss_auth
String
必須
プライベートOSSバケットへのアクセスを有効にするかどうかを指定します。 有効な値:
on
off
この機能を有効にすると、security token Service (STS) によって発行されたセキュリティトークンが自動的に設定されます。 ただし、Alibaba Cloud CDNは、同じAlibaba CloudアカウントのプライベートOSSバケットにのみアクセスできます。 STSトークンの詳細については、「概要」をご参照ください。
on
perm_private_oss_tbl
String
選択可能
access_id=123 access_secret=123abcの形式の永続的なセキュリティトークン (スペースで区切られています) 。永続的なセキュリティトークンを設定すると、Alibaba Cloud CDNは、同じAlibaba Cloudアカウントまたは別の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" }
https_origin_sni
機能の説明: オリジンサーバー名表示 (SNI) を構成します。 詳細については、「オリジンSNIの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enabled
String
必須
オリジンSNIを有効にするかどうかを指定します。 有効な値:
on
off
on
https_origin_sni
String
必須
発信元の要求で運ばれるSNI情報。 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リクエストのタイムアウト期間の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
forward_timeout
Integer
必須
リクエストのタイムアウト期間。 単位は秒です。
説明このパラメーターを100秒未満に設定することを推奨します。
30
例:
{ "Functions": [{ "functionArgs": [{ "argName": "forward_timeout", "argValue": "30" }], "functionName": "forward_timeout" }], "DomainNames": "example.com" }
advanced_origin
機能の説明: 高度なback-to-originルーティング設定を構成します。 詳細については、「高度なオリジン設定の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
variable_type
String
必須
変数の型。 有効な値:
header: リクエストヘッダー。
arg: リクエストURLのクエリ文字列パラメーター。
uri: リクエストURL内のパス。
cookie: リクエストcookie。
ウリ
variable
文字列
必須
変数の名前。The name of the variable.
説明variable_typeパラメーターをuriに設定した場合、variableパラメーターの値はuriのみになります。
ウリ
条件
文字列
必須
条件。 有効な値:
==: equals。
!=: は等しくありません。
==
value
String
必須
変数の値。
/イメージ
起源
文字列
はい
ユーザーリクエストの変数に含まれるオリジンサーバーのドメイン名。 ドメイン名を宛先とするリクエストは、指定されたオリジンサーバーにリダイレクトされます。
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リダイレクトの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
有効化
文字列
はい
302リダイレクトを有効にするかどうかを指定します。
上
オフ
上
max_tries
Integer
いいえ
302リダイレクトの最大数。
デフォルト値: 2。
有効な値: 1 ~ 5。
説明オリジンフェッチの回数-1=302リダイレクトの回数。 オリジンフェッチの最大回数のデフォルト値は3で、有効な値は2〜6です。
2
retain_args
文字列
いいえ
302リダイレクト中にリクエストパラメーターを保持するかどうかを指定します。 デフォルト値: off。 有効な値:
on
off
off
retain_header
String
任意
302リダイレクト中にリクエストヘッダーを保持するかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
response_header
String
任意
配信元サーバーから返される302リダイレクトのレスポンスヘッダー。 デフォルト値: Location。
X-Alicdn-リダイレクト
retain_host
String
選択可能
302リダイレクト中にオリジンドメイン名を保持するかどうかを指定します。 この機能は、レスポンスヘッダーから宛先ドメイン名を取得した場合にのみ使用できます。 デフォルト値:off 有効な値:
on
off
off
modify_host
String
任意
302リダイレクト中にオリジンドメイン名を変更するかどうかを指定します。 この機能は、レスポンスヘッダーから宛先ドメイン名を取得した場合にのみ使用できます。 デフォルトでは、オリジンドメイン名は変更されません。
example.com
cache
String
任意
302リダイレクト時に同じURLのリダイレクト結果をキャッシュするかどうかを指定します。 これにより、Alibaba Cloud CDNのレスポンスパフォーマンスが向上します。 デフォルト値:off 有効な値:
on
off
off
expired_time
Integer
選択可能
302のリダイレクト中に同じURLのキャッシュされたリダイレクト結果のタイムアウト期間。 このパラメーターは、キャッシュパラメーターがonに設定されている場合に有効です。 単位は秒です。 デフォルト値は 3600 です。
7200
follow_origin_host
String
任意
302リダイレクト中にオリジンドメイン名をオリジンホストとして使用するかどうかを指定します。 このパラメーターが [on] に設定されている場合、オリジンドメイン名がオリジンホストとして使用され、最新のオリジンドメイン名がプライマリ /セカンダリの切り替えに使用されます。 デフォルト値:off 有効な値:
on
off
off
follow_5xx_retry_origin
String
任意
プライマリ /セカンダリオリジンの切り替えを有効にするかどうかを指定します。 この機能が有効になっている場合、Alibaba Cloud CDNがオリジンサーバーからHTTP 5xxステータスコードを受信すると、Alibaba Cloud CDNは次に利用可能なオリジンサーバーに切り替わります。 デフォルト値:off 有効な値:
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" }
ipv6_origin
機能の説明: IPv6経由でback-to-originルーティングを構成します。 詳細については、「IPv6経由のback-to-originルーティングの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
IPv6経由でオリジンフェッチを有効にするかどうかを指定します。
on
off
説明この機能を有効にすると、オリジンサーバーはIPv6サービスを提供します。
POPと配信元サーバーの両方に使用可能なIPv6アドレスがある場合は、IPv6接続が使用されます。
IPv4接続は、次のシナリオで使用されます。
POPには使用可能なIPv6アドレスがありません。
配信元サーバーには使用可能なIPv6アドレスがありません。
POPと配信元サーバーには使用可能なIPv6アドレスがありません。
on
フォロー
String
必須
クライアントが使用するIPプロトコルのバージョンに従うかどうかを指定します。
on
off
説明この機能を有効にすると、クライアント要求のIPバージョンがオリジンフェッチに使用されます。
クライアント要求がIPv6を使用する場合、IPv6を使用するオリジンサーバーがオリジンフェッチに使用されます。 IPv6を使用するオリジンサーバーがない場合、IPv4を使用するオリジンサーバーがオリジンフェッチに使用されます。
クライアント要求がIPv4を使用する場合、IPv4を使用するオリジンサーバーがオリジンフェッチに使用されます。 IPv4を使用するオリジンサーバーがない場合、IPv6を使用するオリジンサーバーがオリジンフェッチに使用されます。
on
ipv6_v4_mix_used
String
任意
IPv4/IPv6ポーリング機能を有効にするかどうかを指定します。
on
off
説明この機能は、IPv6およびIPプロトコルを介したオリジンフェッチと相互に排他的です。
IPv4/IPv6ポーリング機能が有効になっている場合、リクエストがIPv4経由で送信されるかIPv6経由で送信されるか、またはオリジンサーバーに存在するIPv4アドレスとIPv6アドレスの数に関係なく、ポーリングを使用してオリジンフェッチのオリジンサーバーのIPアドレスを決定します。
IPv4アドレスとIPv6アドレスの重み比を設定すると、重み比に基づいてオリジンフェッチが実行されます。
off
例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" },{ "argName": "follow", "argValue": "on" }], "functionName": "ipv6_origin" }], "DomainNames": "example.com" }
origin_request_header
機能の説明: オリジンHTTPリクエストヘッダーを構成します。 詳細については、「HTTPリクエストヘッダーの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
header_operation_type
String
必須
リクエストヘッダーに対して実行する操作。 有効な値:
add
delete
修正
rewrite
add
header_name
String
必須
リクエストヘッダーの名前。
Accept-Encoding
header_value
String
任意
リクエストヘッダーの値。 リクエストヘッダーには1つ以上の値を指定できます。 値はコンマ (,) で区切ります。
gzip
複製
String
任意
リクエストヘッダーの重複を許可するかどうかを指定します。 このパラメーターは、header_operation_typeパラメーターをaddに設定する場合に必要です。 有効な値:
on
off
off
header_source
String
任意
置き換えるヘッダー値。The header value that you want to replace. header_operation_typeが書き換えに設定されている場合、このパラメーターを指定する必要があります。 正規表現に対応しています。
value1
header_destination
String
任意
元のヘッダー値を置き換えるために使用されるヘッダー値。 header_operation_typeパラメーターを書き換えに設定する場合は, このパラメーターを指定する必要があります。 有効な値:
value123
match_all
String
任意
マッチモード。 header_operation_typeパラメーターを書き換えに設定する場合は、一致モードを指定する必要があります。 有効な値:
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_ヘッダー
機能の説明: オリジンHTTPレスポンスヘッダーを構成します。 詳細については、「HTTPレスポンスヘッダーの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
header_operation_type
String
必須
レスポンスヘッダーに対して実行する操作。 有効な値:
add
delete
修正
rewrite
add
header_name
String
必須
レスポンスヘッダーの名前。
Cache-Control
header_value
String
任意
レスポンスヘッダーの値。 レスポンスヘッダーには1つ以上の値を指定できます。 値はコンマ (,) で区切ります。
no-cache
複製
String
任意
応答ヘッダーの重複を許可するかどうかを指定します。 このパラメーターは、header_operation_typeパラメーターをaddに設定する場合に必要です。 有効な値:
on
off
off
header_source
String
任意
置き換えるヘッダー値。The header value that you want to replace. header_operation_typeが書き換えに設定されている場合、このパラメーターを指定する必要があります。 正規表現に対応しています。
value1
header_destination
String
任意
元のヘッダー値を置き換えるために使用されるヘッダー値。 header_operation_typeパラメーターを書き換えに設定する場合は, このパラメーターを指定する必要があります。 有効な値:
value123
match_all
String
任意
マッチモード。 header_operation_typeパラメーターを書き換えに設定する場合は、一致モードを指定する必要があります。 有効な値:
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_書き換え
機能の説明: back-to-originリクエストのURLを書き換えます。 詳細については、「back-to-originリクエストのURLの書き換え」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
source_url
String
必須
書き換えたいURL。
^/hello$
target_url
String
必須
最後のURL。
/hello/test
flag
String
任意
書き換えフラグ。 有効な値:
なし: 現在のルールが一致する場合、システムはURLを他のルールと照合し続けます。
break: 現在のルールが一致する場合、システムは他のルールをスキップします。
enhance_break: このフラグはbreakに似ていますが、このフラグはURLパラメータを書き込み、Flash Video (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", }
キャッシュ設定
filetype_based_ttl_set
機能の説明: ファイルの有効期間 (TTL) を設定します。 詳細については、「キャッシュ設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ttl
Integer
必須
TTL。 単位は秒です。 有効な値: 1から99999999、3年以上です。
500000
file_type
String
必須
大文字と小文字が区別されるファイル名拡張子。 ファイル名の拡張子はコンマ (,) で区切ります。 例: jpg、txt。
jpg
重み
Integer
選択可能
体重。 有効な値: 1 ~ 99。
説明デフォルト値は 1 です。 より高い値は、より高い優先度を示します。
1
swift_origin_cache_high
String
任意
cache-ControlやPragmaなど、オリジンサーバーがキャッシュ関連のヘッダーに応答するときに、オリジンサーバーのキャッシュポリシーが優先されるかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
swift_no_cache_low
String
任意
配信元サーバーからの次の応答ヘッダーを無視するかどうかを指定します。 このパラメーターがonに設定されている場合、リソースはキャッシュされません。
キャッシュ制御: no-store
Cache-Control: no-cache
キャッシュ制御: max-age=0
Pragme: キャッシュなし
デフォルト値:off 有効な値:
on
off
off
swift_follow_cachetime
String
任意
クライアントがAlibaba Cloud CDNによって使用されるキャッシュポリシーを使用するかどうかを指定します。 デフォルト値:off 有効な値:
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
機能の説明: ディレクトリのTTLを設定します。 詳細については、「キャッシュ設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ttl
Integer
必須
TTL。 単位は秒です。 有効な値: 1から99999999、3年以上です。
500000
パス
String
必須
ディレクトリ。 ディレクトリはスラッシュ (/) で始める必要があります。
/例 /デモ
重み
Integer
選択可能
体重。 有効な値: 1 ~ 99。
説明デフォルト値は 1 です。 より高い値は、より高い優先度を示します。
1
swift_origin_cache_high
String
任意
cache-ControlやPragmaなど、オリジンサーバーがキャッシュ関連のヘッダーに応答するときに、オリジンサーバーのキャッシュポリシーが優先されるかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
swift_no_cache_low
String
任意
配信元サーバーからの次の応答ヘッダーを無視するかどうかを指定します。 このパラメーターがonに設定されている場合、リソースはキャッシュされません。
キャッシュ制御: no-store
Cache-Control: no-cache
キャッシュ制御: max-age=0
Pragme: キャッシュなし
デフォルト値:off 有効な値:
on
off
off
swift_follow_cachetime
String
任意
クライアントがAlibaba Cloud CDNによって使用されるキャッシュポリシーを使用するかどうかを指定します。 デフォルト値:off 有効な値:
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_コード
機能の説明: ファイルのHTTPステータスコードのTTLを設定します。 詳細については、「ステータスコードの有効期間の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
file_type
String
必須
ファイル名拡張子。 ファイル名の拡張子は大文字と小文字が区別されます。 複数入力する場合は、カンマ (,) で区切ります。 例: jpg、txt。
jpg
code_string
String
必須
ステータスコードとそのTTL。 単位は秒です。 有効な値: 1から99999999 (3年以上) 。 複数のキーと値のペアはコンマ (,) で区切ります。 例: 302=0,301=0,4xx=2。
403=10
swift_origin_cache_high
String
任意
cache-ControlやPragmaなど、オリジンサーバーがキャッシュ関連のヘッダーに応答するときに、オリジンサーバーのキャッシュポリシーが優先されるかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
swift_no_cache_low
String
任意
配信元サーバーからの次の応答ヘッダーを無視するかどうかを指定します。 このパラメーターがonに設定されている場合、リソースはキャッシュされません。
キャッシュ制御: no-store
Cache-Control: no-cache
キャッシュ制御: max-age=0
Pragme: キャッシュなし
デフォルト値:off 有効な値:
on
off
off
swift_follow_cachetime
String
任意
クライアントがAlibaba Cloud CDNによって使用されるキャッシュポリシーを使用するかどうかを指定します。 デフォルト値:off 有効な値:
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_コード
機能の説明: パスのHTTPステータスコードのTTLを設定します。 詳細については、「ステータスコードの有効期間の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
パス
String
必須
ディレクトリ。 ディレクトリはスラッシュ (/) で始める必要があります。 例: /image.
/例 /デモ
code_string
String
必須
ステータスコードとそのTTL。 単位は秒です。 有効な値: 1から99999999 (3年以上) 。 複数のキーと値のペアはコンマ (,) で区切ります。 例: 302=0,301=0,4xx=2。
403=10,404=15
swift_origin_cache_high
String
任意
cache-ControlやPragmaなど、オリジンサーバーがキャッシュ関連のヘッダーに応答するときに、オリジンサーバーのキャッシュポリシーが優先されるかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
swift_no_cache_low
String
任意
配信元サーバーからの次の応答ヘッダーを無視するかどうかを指定します。 このパラメーターがonに設定されている場合、リソースはキャッシュされません。
キャッシュ制御: no-store
Cache-Control: no-cache
キャッシュ制御: max-age=0
Pragme: キャッシュなし
デフォルト値:off 有効な値:
on
off
off
swift_follow_cachetime
String
任意
クライアントがAlibaba Cloud CDNによって使用されるキャッシュポリシーを使用するかどうかを指定します。 デフォルト値:off 有効な値:
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" }
set_resp_ヘッダー
機能の説明: カスタムHTTP応答ヘッダーを構成します。 詳細については、「カスタムHTTPレスポンスヘッダーの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
キー
String
必須
応答ヘッダー。
Cache-Control
value
String
必須
ヘッダー値。 ヘッダー値はコンマ (,) で区切ります。
説明レスポンスヘッダーを削除する場合は、ヘッダー値をnullに設定します。
no-cache
header_operation_type
String
任意
ヘッダーに対して実行する操作。 有効な値:
add
delete
修正
rewrite: ヘッダーを置き換えます。
add
複製
String
任意
リクエストヘッダーの重複を許可するかどうかを指定します。 このパラメーターは、header_operation_typeパラメーターをaddに設定する場合に必要です。 有効な値:
on
off
off
header_source
String
任意
置き換えるヘッダー値。The header value that you want to replace. header_operation_typeが書き換えに設定されている場合、このパラメーターを指定する必要があります。 正規表現に対応しています。
value1
header_destination
String
任意
元のヘッダー値を置き換えるために使用されるヘッダー値。 header_operation_typeパラメーターを書き換えに設定する場合は, このパラメーターを指定する必要があります。 有効な値:
value123
match_all
String
任意
マッチモード。 header_operation_typeパラメーターを書き換えに設定する場合は、一致モードを指定する必要があります。 有効な値:
on: 検索条件に一致するすべてのヘッダー値が置き換えられます。
off: 検索条件に一致する最初の値のみが置き換えられます。
/
access_origin_control
String
任意
クロスオリジンリソース共有 (CORS) を有効にするかどうかを指定します。 有効な値:
on
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_code
Integer
必須
HTTP ステータスコード
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" }
rewrite_host
機能の説明: キャッシュ共有を構成します。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
share_host
String
必須
現在のドメイン名でキャッシュを共有するドメイン名。 このパラメーターを設定しても、リクエストの配信元ホストは変更されません。 share_hostの値は、クエリのキャッシュキーを生成するために使用されます。
example.com
例:
{ "Functions": [{ "functionArgs": [{ "argName": "share_host", "argValue": "example.com" }], "functionName": "rewrite_host" }], "DomainNames": "example.com" }
HTTPS設定
https_option
機能の説明: 基本的なHTTPSパラメーターを設定します。 HTTP/2のみがサポートされています。 詳細については、「HTTP/2の有効化」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
http2
String
任意
HTTP/2を有効にするかどうかを指定します。
on
off
on
サンプルコード:
{ "Functions": [{ "functionArgs": [{ "argName": "http2", "argValue": "on" }], "functionName": "https_option" }], "DomainNames": "example.com" }
http_force
機能の説明: HTTPへの強制URLリダイレクトを設定します。 詳細については、「強制リダイレクト」をご参照ください。
説明HTTPへのURLの強制リダイレクト機能は、HTTPSへのURLの強制リダイレクト機能 (機能: https_force) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
HTTPへのURLリダイレクトを有効にするかどうかを指定します。
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への強制URLリダイレクトを設定します。 詳細については、「強制リダイレクト」をご参照ください。
説明HTTPSへの強制URLリダイレクト機能は、HTTPへの強制URLリダイレクト機能 (機能: https_force) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
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バージョン管理の設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
tls10
String
任意
TLS 1.0を有効にするかどうかを指定します。 デフォルト値 : on。 有効な値:
on
off
on
tls11
String
任意
TLS 1.1を有効にするかどうかを指定します。 デフォルト値 : on。 有効な値:
on
off
on
tls12
String
任意
TLS 1.2を有効にするかどうかを指定します。 デフォルト値 : on。 有効な値:
on
off
on
tls13
String
任意
TLS 1.3を有効にするかどうかを指定します。 デフォルト値 : on。 有効な値:
on
off
on
暗号化グループ
String
任意
暗号スイートグループ。 デフォルト値: all。 有効な値:
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
例:
TLS 1.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" }TLS 1.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" }TLS 1.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" }
アクセス制御の設定
referer_white_list_set
機能の説明: リファラーホワイトリストを設定します。 詳細については、「ホットリンク保護」をご参照ください。
説明リファラーホワイトリスト機能は、リファラーブラックリスト機能 (関数: referer_black_list_set) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
refer_domain_allow_list
String
必須
リファラーホワイトリストに追加するドメイン名。 複数のドメイン名を指定できます。 ドメイン名はコンマ (,) で区切ります。
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
任意
空のリファラーヘッダーを持つリクエストがAlibaba Cloud CDN POPのリソースにアクセスできるかどうかを指定します。 デフォルト値:off 有効な値:
on
off
off
redirect_url
String
任意
リダイレクトURL。 リクエストのReferer情報がホワイトリストの情報と一致しない場合、リクエストがブロックされた後、403ステータスコードは返されません。 この場合、302ステータスコードとLocationヘッダーが返されます。 このパラメーターはLocationヘッダーの値で、http:// またはhttps:// で始まります。
http://www.example.comdisable_ast
String
任意
ホワイトリスト内のドメイン名の完全一致を有効にするかどうかを指定します。 デフォルト値:off このパラメーターをonに設定すると、ドメイン名の完全一致が有効になります。
このパラメーターをonに設定すると、次のルールが適用されます。
完全一致がサポートされています。
ホワイトリストに
example.comを追加すると、example.comが一致します。ホワイトリストに
a*b.example.comを追加すると、<Any文字s>b.example.comが一致します。
接尾辞の一致はサポートされていません。
このパラメーターをoffに設定すると、次のルールが適用されます。
完全一致はサポートされていません。
接尾辞の一致がサポートされています。
ホワイトリストに
example.comを追加すると、example.comと<任意の文字s>.example.comが一致します。ホワイトリストに
a*b.example.comを追加すると、<Any文字s>b.example.comと<Any文字>.a<Any文字s>b.example.comが一致します。
off
ignore_scheme
String
任意
schemeパラメーターを無視するかどうかを指定します。 デフォルト値:off この機能を有効にした後、リクエスト内のリファラーにHTTPまたはHTTPSヘッダーがない場合でも、リファラーは有効と見なされます。
このパラメーターをonに設定すると、リファラーは次の形式になります。
referer: www.example.comこのパラメーターをoffに設定すると、リファラーは次の形式になります。
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" }, { "argName": "disable_ast", "argValue": "on" }, { "argName": "ignore_scheme", "argValue": "on" }, { "argName": "redirect_url", "argValue": "http://www.example.com" } ], "functionName": "referer_white_list_set" } ], "DomainNames": "example.com" }
referer_black_list_set
機能の説明: リファラーブラックリストを設定します。 詳細については、「ホットリンク保護」をご参照ください。
説明リファラーブラックリスト機能は、リファラーホワイトリスト機能 (関数: referer_white_list_set) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
refer_domain_deny_list
String
必須
リファラーブラックリストに追加するドメイン名。 複数のドメイン名を指定できます。 ドメイン名はコンマ (,) で区切ります。
example.aliyundoc.com,demo.aliyundoc.comallow_empty
String
任意
空のリファラーヘッダーを持つリクエストがAlibaba Cloud CDN POPのリソースにアクセスできるかどうかを指定します。 有効な値:
on
off
off
redirect_url
String
任意
リダイレクトURL。 リクエストのReferer情報がブラックリストの情報と一致する場合、リクエストがブロックされた後、403ステータスコードは返されません。 この場合、302ステータスコードとLocationヘッダーが返されます。 このパラメーターはLocationヘッダーの値で、http:// またはhttps:// で始まります。
http://www.example.comdisable_ast
String
任意
ブラックリスト内のドメイン名の完全一致を有効にするかどうかを指定します。 デフォルト値:off このパラメーターをonに設定すると、ドメイン名の完全一致が有効になります。
このパラメーターをonに設定すると、次のルールが適用されます。
完全一致がサポートされています。
ブラックリストに
example.comを追加すると、example.comが一致します。ブラックリストに
a*b.example.comを追加すると、<Any character s>b.example.comが一致します。
接尾辞の一致はサポートされていません。
このパラメーターをoffに設定すると、次のルールが適用されます。
完全一致はサポートされていません。
接尾辞の一致がサポートされています。
ブラックリストに
example.comを追加すると、example.comと<任意の文字s>.example.comが一致します。ブラックリストに
a*b.example.comを追加すると、<Any character s>b.example.comと<Any characters>.a<Any character s>b.example.comが一致します。
off
ignore_scheme
String
任意
schemeパラメーターを無視するかどうかを指定します。 デフォルト値:off この機能を有効にした後、リクエスト内のリファラーにHTTPまたはHTTPSヘッダーがない場合でも、リファラーは有効と見なされます。 例:
このパラメーターをonに設定すると、リファラーは次の形式になります。
referer: www.example.comこのパラメーターをoffに設定すると、リファラーは次の形式になります。
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" }, { "argName": "disable_ast", "argValue": "on" }, { "argName": "ignore_scheme", "argValue": "on" }, { "argName": "redirect_url", "argValue": "http://www.example.com" } ], "functionName": "referer_black_list_set" } ], "DomainNames": "example.com" }
aliauth
機能の説明: URL署名を設定します。 詳細については、「URL署名」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
auth_m3u8
String
任意
M3U8書き換えを有効にするかどうかを指定します。 M3U8書き換えはTSファイルへのアクセスを認証します。 M3U8の書き換えが無効の場合、TSファイルへのアクセスが拒否されます。 有効な値: onとoff。 デフォルト値 : on。
on
auth_type
String
必須
署名タイプ。 有効な値:
no_auth: URL署名を無効にします。
type_a: タイプAの署名を有効にします。
type_b: タイプB署名を有効にします。
type_c: タイプCの署名を有効にします。
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アドレスを入力できます。 複数の IP アドレスはカンマ (,) で区切ります。
192.168.0.1
req_auth_ip_acl_xfwd
String
任意
IPアドレス検証モード。 有効な値:
on: これはデフォルトモードです。 このモードは、クライアントIPアドレスのみを検証します。 クライアントIPアドレスは、クライアント要求のXFFヘッダーの最初のIPアドレスです。
off: このモードでは、クライアントがPOPに接続するために使用するIPアドレスのみを検証します。
all: このモードは、次のIPアドレスを検証します。
XFFヘッダーの最初のIPアドレス。クライアントIPアドレスです。
POPに接続するためにクライアントが使用するIPアドレス。
all
sign_param
String
任意
署名パラメーターの名前。 このパラメーターは、auth_typeパラメーターがtype_fに設定されている場合にのみ有効です。
sign
time_param
String
任意
timestampパラメーターの名前。 このパラメーターは、auth_typeパラメーターがtype_fに設定されている場合にのみ有効です。
time
time_format
String
任意
タイムスタンプの形式。 このパラメーターは、auth_typeパラメーターがtype_fに設定されている場合にのみ有効です。
dec: decimal。
hex: 16進数。
hec
path_encoding
String
任意
URLエンコードを有効にするかどうかを指定します。 有効な値: onとoff。 このパラメーターは、auth_typeパラメーターがtype_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
機能の説明: リモート認証を設定します。 詳細については、「リモート認証」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
はい
リモート認証を有効にするかどうかを指定します。
on
off
on
remote_auth_addr
文字列
はい
認証サーバーのアドレス。 有効な形式:
https://cdn.aliyun.com/authおよびhttp:// 10.10.10.10/authhttps://example.aliyundoc.com/auth
remote_auth_method
文字列
必須
リクエスト方式。 有効な値: get、post、head。
get
remote_auth_type
String
必須
認証ファイルのタイプ。 値はすべての型を指定します。 ファイルタイプは縦棒 (|) で区切ります。 値は大文字と小文字を区別します。 たとえば、jpgはJPGとは異なります。
all
remote_auth_reserve_args
文字列
必須
保持するパラメーター。 パラメータは縦棒 (|) で区切ります。 値は大文字と小文字を区別しません。 たとえば、keyはKEYに相当します。
all: すべてのパラメータを保持します。
ali_delete_all_args: すべてのパラメーターを削除します。
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
文字列
任意
追加するリクエストヘッダー。 複数のリクエストヘッダーは縦棒 (|) で区切ります。 値は大文字と小文字を区別しません。 たとえば、http_remote_addrはHTTP_Remote_Addrと同じです。
なし
remote_auth_success_code
Integer
必須
リクエストが認証に合格したときにAlibaba Cloud CDNに返されるHTTPステータスコード。 例: 200。 複数のHTTPステータスコードを設定できます。 HTTPステータスコードはコンマ (,) で区切ります。
200
remote_auth_fail_code
Integer
必須
リクエストが認証に失敗したときにAlibaba Cloud CDNに返されるHTTPステータスコード。 例: 403。 複数のHTTPステータスコードを設定できます。 HTTPステータスコードはコンマ (,) で区切ります。
403,404
remote_auth_other_code_act
String
任意
Alibaba Cloud CDNに返されたHTTPステータスコードが、リクエストが認証に合格または失敗したことを示していない場合に実行する操作。 有効な値:
pass (デフォルト): Alibaba Cloud CDNはリクエストを許可します。
reject: Alibaba Cloud CDNはリクエストを拒否します。
パス
remote_auth_fail_resp_code
Integer
必須
リクエストが認証に失敗したときにAlibaba Cloud CDNからユーザーに返されるHTTPステータスコード。 たとえば、このパラメーターを403に設定した場合、リクエストが認証に失敗した場合、Alibaba Cloud CDNはHTTP 403ステータスコードをユーザーに返します。
403
remote_auth_timeout
Integer
必須
認証タイムアウト期間。 単位:ミリ秒。 最大値: 3000。
500
remote_auth_timeout_action
String
必須
認証がタイムアウトしたときに実行されるアクション。 有効な値:
pass: Alibaba Cloud CDNはリクエストを許可します。
reject: Alibaba Cloud CDNは、認証失敗に対して指定されたHTTPステータスコードをユーザーに返します。
パス
例:
{ "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) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ip_list
String
必須
ブラックリストに追加するIPアドレス。 複数のIPアドレスを指定できます。 IPアドレスはコンマ (,) で区切ります。
192.168.0.1/24
ip_acl_xfwd
String
任意
X-Forwarded-ForヘッダーのIPアドレスを検証に使用するかどうかを指定します。 有効な値:
on (デフォルト): 検証に
X-Forwarded-Forリクエストヘッダーの最初のIPアドレスを使用します。off: 検証に
POPへの接続に使用されるIPアドレスを使用します。all:
X-Forwarded-Forリクエストヘッダーの最初のIPアドレスと、検証のためにPOPへの接続に使用されるIPアドレスの両方を使用します。
all
サンプルコード:
{ "Functions": [ { "functionArgs": [ { "argName": "ip_list", "argValue": "192.168.0.1/24" }, { "argName": "ip_acl_xfwd", "argValue": "all" } ], "functionName": "ip_allow_list_set" } ], "DomainNames": "example.com" }
ip_black_list_set
機能の説明: IPアドレスブラックリストを構成します。 詳細については、「IPアドレスブラックリストまたはホワイトリスト」をご参照ください。
説明IPアドレスブラックリスト機能は、IPアドレスホワイトリスト機能 (機能: ip_allow_list_set) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ip_list
String
必須
ブラックリストに追加するIPアドレス。 複数のIPアドレスを指定できます。 IPアドレスはコンマ (,) で区切ります。
192.168.0.1
ip_acl_xfwd
String
任意
X-Forwarded-ForヘッダーのIPアドレスを検証に使用するかどうかを指定します。 有効な値:
on (デフォルト): 検証に
X-Forwarded-Forリクエストヘッダーの最初のIPアドレスを使用します。off: 検証に
POPへの接続に使用されるIPアドレスを使用します。all:
X-Forwarded-Forリクエストヘッダーの最初のIPアドレスと、検証のためにPOPへの接続に使用されるIPアドレスの両方を使用します。
all
サンプルコード:
{ "Functions": [ { "functionArgs": [ { "argName": "ip_list", "argValue": "192.168.0.1" }, { "argName": "ip_acl_xfwd", "argValue": "all" } ], "functionName": "ip_black_list_set" } ], "DomainNames": "example.com" }
ali_ua
機能の説明: User-Agentのホワイトリストまたはブラックリストを設定します。 詳細については、「User-Agentブラックリストまたはホワイトリストの設定」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ua
String
必須
ホワイトリストまたはブラックリストに追加するユーザーエージェント。 アスタリスク (*) を使用して、任意の文字を一致させ、複数の値を指定できます。 値は縦棒 (|) で区切ります。 例:
* 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" }
EdgeScriptの設定
edge_function
機能の説明: EdgeScriptを設定します。 詳細については、「EdgeScriptの概要」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
ルール
String
必須
ドメイン固有言語 (DSL) スクリプト。
if eq($uri, '/') {\n rewrite('https:// example.com/index.html', 'redirect')\n}
プリ
Integer
必須
優先順位。 有効な値: 0 ~ 999 数字が小さいほど、優先度が高くなります。
説明頭と足の実行位置の優先順位は互いに無関係です。
0
enable
String
必須
スクリプトを有効にするかどうかを指定します。 有効な値:
on
off
on
name
String
必須
スクリプトの名前。 名前には、文字とアンダースコア (_) のみを使用できます。
test
pos
String
任意
スクリプトを実行する位置。 デフォルト値: head。 有効な値:
head: スクリプトはパイプラインの先頭で実行されます。
foot: スクリプトはパイプラインの最下部で実行されます。
ヘッド
brk
String
任意
現在のスクリプトの実行後に他のスクリプトをスキップするかどうかを指定します。 デフォルト値:off 有効な値:
on: 現在のスクリプトが一致すると、指定された位置以降のスクリプトはスキップされます。
off: 現在のスクリプトが一致している場合、システムは要求を他のスクリプトと照合し続けます。
off
オプション
String
任意
拡張子。
なし
文法
String
任意
スクリプトの構文。 有効な値: es2とjs。 デフォルト値: es2。
/
jsmode
String
任意
JavaScriptの実行モード。 デフォルト値: bypass。 有効な値:
redirect: ブロックモード。
バイパス: バイパスモード。
/
例:
{ "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" }
パフォーマンスの改善
set_hashkey_args
機能の説明: URLパラメーターを保持します。 詳細については、「パラメーターフィルター処理」をご参照ください。
説明URLパラメーターの保持機能は、URLパラメーターの削除機能 (関数: ali_remove_args) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
hashkey_args
String
任意
保持するパラメーター。 最大10個のパラメーターを指定できます。 パラメーターはコンマ (,) で区切ります。
key1,key2
disable
String
必須
すべてのパラメーターを無視するかどうかを指定します。 デフォルト値:off 有効な値:
on: すべてのパラメータを無視します。 [追加] ルールのみが有効になります。
off: パラメータを無視しません。 保持、追加、および削除のルールが有効になります。
説明hashkey_args設定の優先度が高くなります。 このパラメーターをonに設定しても、hashkey_argsパラメーターで指定されたパラメーターは保持されます。
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パラメーターの保持機能 (function: set_hashkey_args) と競合します。 2つの機能のうち1つのみを使用できます。
どちらかの機能を設定した場合は、他の機能を設定する前に、その機能の設定を削除する必要があります。 DeleteVodSpecificConfigを呼び出して、ドメイン名の設定を削除できます。 フィーチャーにスイッチパラメーターがあり、パラメーターがオフに設定されている場合、フィーチャーは設定されていると見なされます。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
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
機能の説明: 画像処理を設定します。 詳細は、「 画像処理 (Image processing)」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
画像編集を有効にするかどうかを指定します。
on
off
on
ファイルタイプ
String
必須
変換するイメージ形式。 複数の値は縦棒 (|) で区切ります。 有効な値:
JPEG
JPG
PNG
WEBP
BMP
GIF
TIFF
JP2: JPEG 2000
jpg | jpeg | png
webp
String
任意
WebPへの自動変換を有効にするかどうかを指定します。
on
off
on
オリエント
String
任意
自動回転を有効にするかどうかを指定します。
on
off
説明この機能は、回転プロパティを持つ画像に対してのみ有効です。
on
スリム
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" }
ビデオ関連の設定
範囲
機能の説明: オブジェクトのチャンクを設定します。 詳細については、「オブジェクトのチャンク化」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
範囲オリジンフェッチを有効にするかどうかを指定します。 有効な値:
on: 範囲オリジンフェッチを有効にします。
off: 範囲オリジンフェッチを無効にします。
force: 範囲オリジンフェッチを強制的に有効にします。
on
例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "range" }], "DomainNames": "example.com" }
video_seek
機能の説明: ビデオシークを設定します。 詳細については、「ビデオ検索」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
ビデオシークを有効にするかどうかを指定します。 有効な値:
on
off
on
サンプルコード:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "video_seek" }], "DomainNames": "example.com" }
ali_video_split
機能の説明: オーディオ抽出を設定します。 詳細については、「オーディオ抽出」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
オーディオ抽出を有効にするかどうかを指定します。
on
off
on
例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "ali_video_split" }], "DomainNames": "example.com" }
ali_video_preview
機能の説明: ビデオプレビューを設定します。 詳細については、「オーディオとビデオのプレビュー」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
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の暗号化と書き換えを設定します。 詳細については、「HLS暗号化のパラメーターパススルー」をご参照ください。
下表に、各パラメーターを説明します。
パラメーター
タイプ
必須
説明
例
enable
String
必須
M3U8暗号化と書き換えを有効にするかどうかを指定します。
on
off
on
hls_token_arg_name
String
任意
HLSトークンのカスタムパラメータ名。 名前を指定しない場合は、MtsHlsUriTokenが名前として使用されます。
example
例:
{ "Functions": [{ "functionArgs": [{ "argName": "enable", "argValue": "on" }], "functionName": "hls_token_rewrite" }], "DomainNames": "example.com", }