ポリシーで高度なポリシー式を構成する

最終公開日 : Sep 25, 2026
1 つのポリシーに最大 1,499 文字の高度なポリシー式を設定できます。高度なポリシー式のユーザーインターフェイスは、式を設定している機能と、ポリシーまたは別の用途のどちらに式を設定するかによって、ある程度異なります。
コマンドラインで式を設定するときは、引用符 (「..」または '.') を使用して式を区切ります。式内では、バックスラッシュ () を使用して追加の引用符をエスケープします。たとえば、式で引用符をエスケープする標準的なメソッドを以下に示します。
"\"abc\""
‘\"abc\"’
また、コマンドラインで疑問符やその他のバックスラッシュをエスケープするには、バックスラッシュを使用する必要があります。たとえば、式 http.req.url.contains (「?」)疑問符を解析するには、バックスラッシュが必要です。疑問符を入力すると、コマンドラインにバックスラッシュ文字が表示されないことに注意してください。一方、バックスラッシュをエスケープすると(たとえば、式'http.req.url.contains (「\\\ http」) ')、エスケープ文字がコマンドラインにエコーされます。
エントリを読みやすくするために、式全体の引用符をエスケープできます。式の先頭に、エスケープシーケンス「q」と、次の特殊文字のいずれかを入力します。/{<|~$\^+=&%@\`?.
次のように、式の最後に特殊文字のみを入力します。
q@http.req.url.contains("sometext") && http.req.cookie.exists@

q~http.req.url.contains("sometext") && http.req.cookie.exists~
{区切り文字を使用する式は} で閉じられることに注意してください。
一部の機能 (たとえば、統合キャッシュとレスポンダー) では、ポリシーの構成ダイアログボックスに式を構成するための第 2 のダイアログボックスが表示されます。このダイアログでは、式の設定中の各ポイントで使用可能な選択肢を示すドロップダウンリストから選択できます。これらの設定ダイアログを使用する場合は算術演算子を使用できませんが、他のほとんどの高度なポリシー式機能を使用できます。算術演算子を使用するには、式を自由形式で記述します。

CLI を使用して高度なポリシー構文規則を構成する

コマンドプロンプトで次のコマンドを入力して、詳細ポリシールールを構成し、構成を確認します。
  1. add cache|dns|rewrite|cs policyName **-rule** expression featureSpecificParameters **-action**
  2. show cache|dns|rewrite|cs policyName 次に、キャッシングポリシーの設定例を示します。
    例:
    > add cache policy pol-cache -rule http.req.content_length.le(5) -action INVAL
     Done

    > show cache policy pol-cache
            Name: pol-cache
            Rule: http.req.content_length.le(5)
            CacheAction: INVAL
            Invalidate groups: DEFAULT
            UndefAction: Use Global
            Hits: 0
            Undef Hits: 0

     Done

GUI を使用して高度なポリシー式を設定します

  1. ナビゲーションウィンドウで、ポリシーを構成する機能の名前をクリックします。たとえば、、、、、または を選択し、 をクリックします。
  2. [追加] をクリックします。
  3. ほとんどのフィーチャでは、 フィールドをクリックします。コンテンツスイッチの場合は、 をクリックします。
  4. アイコン (家) をクリックし、ドロップダウンリストから最初の式の接頭辞を選択します。たとえば、レスポンダーでは、オプションは HTTP、SYS、およびクライアントです。次の適用可能なオプションのセットがドロップダウンリストに表示されます。
  5. 次のオプションをダブルクリックして選択し、ピリオド (.) を入力します。ここでも、適用可能なオプションのセットが別のドロップダウンリストに表示されます。
  6. 入力フィールド (括弧で示される) が表示されるまで、オプションの選択を続けます。入力フィールドが表示されたら、括弧内に適切な値を入力します。たとえば、 を選択した場合は、括弧内に整数を指定します。テキスト文字列は引用符で区切られます。次に例を示します。
    HTTP.REQ.BODY(1000).BETWEEN("this","that")
  7. 複合式の 2 つの部分の間に演算子を挿入するには、 アイコン (シグマ) をクリックし、演算子のタイプを選択します。以下は、Boolean OR () (2 本の縦棒で示される) を使用して設定された式の例です。 ||):
    HTTP.REQ.URL.EQ("www.mycompany.com")||HTTP.REQ.BODY(1000).BETWEEN("this","that")
  8. 名前付き式を挿入するには、 アイコン (プラス記号) の横にある下向き矢印をクリックし、名前付き式を選択します。
  9. ドロップダウンメニューを使用して式を構成し、組み込み式を挿入するには、 アイコン (プラス記号) をクリックします。 ダイアログボックスは、メインダイアログボックスと同様に機能しますが、オプションを選択するためのドロップダウンリストが表示され、かっこではなくデータ入力用のテキストフィールドが表示されます。このダイアログボックスには、よく使用する式を挿入する ドロップダウンリストもあります。式の追加が完了したら、 **「OK」**をクリックします。
  10. 入力が終わったら、**[作成]**をクリックします。ステータスバーにメッセージが表示され、ポリシー式が正常に設定されたことが示されます。

GUI を使用して高度なポリシー式をテストする

  1. ナビゲーションウィンドウで、ポリシーを構成する機能の名前をクリックし (たとえば、、、、、または を選択できます)、 をクリックします。
  2. ポリシーを選択し、 をクリックします。
  3. 式をテストするには、 アイコン (チェックマーク) をクリックします。
  4. ダイアログボックスで、式に一致する を選択します。
  5. 「 HTTP リクエストデータ 」または「 HTTP レスポンスデータ 」フィールドに、式を使用して解析する HTTP リクエストまたはレスポンスを貼り付け、「 評価」をクリックします。完全な HTTP リクエストまたはレスポンスを指定する必要があり、ヘッダーと本文は空白行で区切る必要があります。HTTP ヘッダーをトラップするプログラムの中には、レスポンスもトラップしないものがあります。ヘッダーのみをコピーして貼り付ける場合は、ヘッダーの最後に空白行を挿入して、完全な HTTP リクエストまたはレスポンスを形成します。
  6. をクリックして、このダイアログボックスを閉じます。