ルール機能は、グラフィカルインターフェイスを提供します。ルールは、ユーザーリクエスト内のパラメーターを識別して設定を適用するかどうかを判断し、設定を柔軟かつ正確に制御できます。キャッシュ、リダイレクト、圧縮、オリジンフェッチ、WAF などの機能に対して、同じ構文とロジックを使用して条件付きルールを作成し、デプロイできます。
ESA ルール
ルールを使用すると、キャッシュ、リダイレクト、圧縮、オリジンフェッチ、WAF などのさまざまな機能にわたって、同じ基本的な構文と設定ロジックを使用して条件付きルールを作成し、デプロイできます。
注意事項
特定の機能について、グローバルレベルとルールレベルの両方で設定を追加した場合、ユーザーリクエストがルール条件に一致すると、ルール設定が優先されます。
ルール条件と機能設定を含む単一のルール設定は、4 K 文字に制限されます。
サイトのすべての設定情報 (グローバル設定とルール設定を含む) は、512 K 文字に制限されます。この制限には、セキュリティ保護のためのルール設定は含まれません。
ルール名は 128 文字に制限されます。
ルールテンプレート
ESA は、一般的なシナリオ向けのルール設定テンプレートを提供します。テンプレートをクリックすると、ルールをすばやく作成できます。
ルールを追加すると、ユーザーがリソースをリクエストしたときに、ESA は ルール実行の優先順位に基づいてルールを順番に照合し、実行します。
操作手順
ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
[ルールテンプレート] ページで 新しい URL にリダイレクト を選択し、右上隅にある 作成 をクリックします。
カスタムルール設定で、リダイレクトする URI パス (例:
/esa.jpg) を入力します。URL リダイレクトセクションで、完全なリダイレクト URL (例:
https://www.aliyun.com) を入力します。http://yourDomain/esa.jpgにアクセスしてテストします。ステータスコード 301 が返され、リダイレクトがアクティブであることを示します。
WAF 保護のためのルールの使用
例:中国本土以外のすべての国と地域をブロックする
ルール条件の設定
単一の国または地域 (この例では中国本土) を除くすべての国と地域をブロックするには、次の手順を実行します。
ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
ルール名 (例:
rule-01) を入力します。[一致タイプ] ドロップダウンリストから 国/地域 を選択します。
[演算子] ドロップダウンリストから 等しくない を選択します。
[一致する値] ドロップダウンリストから 中国本土 を選択します。
最後に、アクション ドロップダウンリストから [ブロック] を選択し、OK をクリックします。

単一の国または地域をブロックするには、演算子 ドロップダウンリストから 等しい を選択します。その後、同じ手順に従います。
式:(ip.geoip.country ne "CN")。
ブロッキングルールの検証
リクエストがシンガポールなど、中国本土以外のリージョンから送信された場合、デフォルトのブロックページと 403 ステータスコードが返されます。

リダイレクトルールの設定
例:ある URL から別の URL へのリクエストのリダイレクト
ルール条件の設定
ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
ルール名 (例:
rule-02) を入力します。[一致タイプ] ドロップダウンリストから ホスト名 を選択します。
[演算子] ドロップダウンリストから 次の値に等しい: を選択します。
[一致する値] テキストボックスに、ホスト名
www.example.comを入力します。And をクリックし、[一致タイプ] ドロップダウンリストから URI パス を選択して、URI パスのルール式を追加します。
[演算子] ドロップダウンリストから 次の値に等しい: を選択します。
[一致する値] テキストボックスに、パス
/image1.jpgを入力します。URL リダイレクトセクションに、リダイレクト先の URL
https://www.example.com/image/image2.jpgを入力します。

リダイレクトの検証
元の URL にアクセスすると、リクエストは /image パスにリダイレクトされます。ステータスコード 301 は、image.jpg へのリダイレクトが成功したことを示します。

ブラウザキャッシュ TTL ルールの設定
例:ホスト名が www.example.com で URL パスが /content の場合にリソースを 1 時間キャッシュする
ルール条件の設定
ESA コンソールで、サイト管理 を選択し、サイト 列で対象のサイトをクリックします。
左側のナビゲーションウィンドウで、 を選択します。
ルール名 (例:
rule-03) を入力します。[一致タイプ] ドロップダウンリストから ホスト名 を選択します。
[演算子] ドロップダウンリストから 次の値に等しい: を選択します。
[一致する値] テキストボックスに、ホスト名
www.example.comを入力します。And をクリックし、[一致タイプ] ドロップダウンリストから URI パス を選択して、URI パスのルール式を追加します。
[演算子] ドロップダウンリストから 次の値に等しい: を選択します。
[一致する値] テキストボックスに、パス
/contentを入力します。

ブラウザキャッシュ TTL の設定
カスタム TTL を使用 を選択します。1 を入力し、単位として 時間 を選択します。

ブラウザキャッシュ TTL の検証
ファイルへのアクセスをテストします。レスポンスヘッダー cache-control: max-age=3600 が返されます。
