キャッシュリダイレクトのポリシーの構成
キャッシュリダイレクションポリシーには、式 ( ルールとも呼ばれる) が含まれます。式は、クライアント要求がポリシーと比較されるときに評価される条件を表します。
キャッシュリダイレクションポリシーのアクションは明示的に構成しません。
キャッシュリダイレクションポリシーには名前があり、高度なポリシー式、または論理演算子と次の組み込みアクションを使用して組み合わされた一連の高度なポリシー式句が含まれます。
- キャッシュ
- ORIGIN
高度なポリシー式の詳細については、「 ポリシーと式」を参照してください。
CLI を使用したキャッシュリダイレクションポリシーの追加
コマンドプロンプトで次のコマンドを入力して、キャッシュリダイレクトポリシーを追加し、構成を確認します。
- add cr policy <policyName> \*\*-rule\*\* <expression> -action<string> [-logAction<string>]
- show cr policy [<policyName>]
<!--NeedCopy-->
例:
単純な表現のポリシー:
> add cr policy crpol1 -rule !(HTTP.REQ.URL.ENDSWITH(".jpeg")) -action origin
Done
> show cr policy crpoll
Policy: crpol1 Rule: !(HTTP.REQ.URL.ENDSWITH(".jpeg")) Action: ORIGIN
Hits: 0
Done
<!--NeedCopy-->
複合式を含むポリシー:
> add cr policy crpol11 -rule 'http.req.method.eq(post) && (HTTP.REQ.URL.ENDSWITH(".gif") || HTTP.REQ.URL.ENDSWITH(".cgi"))' -action cache
Done
> show cr policy crpol11
Policy: crpol11 Rule: http.req.method.eq(post) && (HTTP.REQ.URL.ENDSWITH(".gif") || HTTP.REQ.URL.ENDSWITH(".cgi")) Action: CACHE
Hits: 0
Done
<!--NeedCopy-->
ヘッダーを評価するポリシー:
> add cr policy crpol12 -rule http.req.header("If-Modified-Since").exists -action origin
Done
> show cr policy crpol12
Policy: crpol12 Rule: http.req.header("If-Modified-Since").exists Action: ORIGIN
Hits: 0
Done
<!--NeedCopy-->
CLI を使用してキャッシュリダイレクトポリシーを変更または削除する
- キャッシュリダイレクションポリシーを変更するには、set cr policy コマンドを使用します。これは add cr policy コマンドとほぼ同じですが、既存のポリシーの名前を入力し、変更するパラメータを指定するだけで済む点が異なります。
- ポリシーを削除するには、<name> 引数のみを受け入れる
rm cr policy
コマンドを使用します。ポリシーが仮想サーバにバインドされている場合は、ポリシーを削除する前に、ポリシーをバインド解除する必要があります。
キャッシュリダイレクトポリシーのバインド解除の詳細については、「 キャッシュリダイレクト仮想サーバーからポリシーをバインド解除する」を参照してください。
GUI を使用して単純な式を使用してキャッシュリダイレクションポリシーを構成する
-
トラフィック管理 > キャッシュリダイレクト > ポリシーに移動します。
-
詳細ペインで、[ 追加] をクリックします。
- [ キャッシュリダイレクトポリシーの作成 ] ダイアログボックスの [ 名前 ] テキストボックスに、ポリシーの名前を入力します。
- 「アクション」ドロップダウンリストから適切なアクション「キャッシュ」または「オリジン」を選択します。
- [ ログアクション ] 領域で、[ 追加] をクリックします。[ 監査メッセージアクションの作成 ] ダイアログボックスに名前を入力します。
-
ドロップダウンリストから適切な値を選択して、 ログレベルを設定します 。
- 緊急
- アラート
- クリティカル
- エラー
- 警告
- 通知
- 情報提供
- デバッグ
- [式] 領域に式を入力します 。
- 式タイプ-一般
- フロータイプ-REQ
- プロトコル-HTTP
- 修飾子-URL
- オペレーター-!=
- 値-/.jpeg
- [作成]をクリックします。
-
-
単純式を設定するには、式を入力します。次に示すのは、URL内の
.jpeg
拡張子をチェックする式の例です。- 式タイプ-一般
- フロータイプ-REQ
- プロトコル-HTTP
- 修飾子-URL
- オペレーター-!=
- 値-/.jpeg
次の例の単純な式は、リクエスト内の IF-Modified-Since ヘッダーをチェックします。
- 式タイプ-一般
- フロータイプ-REQ
- プロトコル-HTTP
- 修飾子-HEADER
- 演算子-EXIST
- ヘッダー名-If-Modified-Snice
- 式の入力が完了したら、[ 作成] をクリックします。
GUI を使用した複合式を使用したキャッシュリダイレクションポリシーの設定
-
トラフィック管理 > キャッシュリダイレクト > ポリシーに移動します。
-
詳細ペインで、[ 追加] をクリックします。
-
[ Name ] テキストボックスに、ポリシーの名前を入力します。
名前は、英字、数字、またはアンダースコア記号で始まり、1 ~ 127 の文字、数字、およびハイフン(-)、ピリオド(.)、シャープ(#)、スペース()、アットマーク(@)、等号(=)、およびアンダースコア(_)記号で構成できます。このポリシーが検出するために作成されたコンテンツの種類を他のユーザーがわかりやすいように名前を選択してください。
- 「アクション」ドロップダウンリストから適切なアクション「キャッシュ」または「オリジン」を選択します。
- [ ログアクション ] 領域で、[ 追加] をクリックします。[ 監査メッセージアクションの作成 ] ダイアログボックスに名前を入力します。
-
ドロップダウンリストから適切な値を選択して、 ログレベルを設定します 。
- 緊急
- アラート
- クリティカル
- エラー
- 警告
- 通知
- 情報提供
- デバッグ
- [式] 領域に式を入力します 。
- 式タイプ-一般
- フロータイプ-REQ
- プロトコル-HTTP
- 修飾子-URL
- オペレーター-!=
- 値-/.jpeg
- [作成]をクリックします。
-
-
作成する複合式のタイプを選択します。選択肢は次のとおりです:
-
任意の式にマッチします。ポリシーは、1 つ以上の個別の式がトラフィックに一致する場合、トラフィックと一致します。
-
[すべての式に一致]。ポリシーは、個々の式がすべてトラフィックに一致する場合にのみ、トラフィックを照合します。
-
表形式の表現。[式] リストを 3 列の表形式に切り替えます。右端の列に、次のいずれかの演算子を配置します。
- AND [&&] 演算子、つまりポリシーに一致させるには、リクエストが現在の式と次の式の両方と一致する必要があります。
-
OR [
既存の式を選択し、次のいずれかの演算子をクリックして、ネストされたサブグループ内の式をグループ化することもできます。
- BEGIN SUBGROUP [+ (] 演算子。NetScalerアプライアンスに、選択した式でネストされたサブグループを開始するように指示します。(式からこの演算子を削除するには、-(.) をクリックします。
- END SUBGROUP [+)] 演算子。NetScalerアプライアンスに、現在ネストされているサブグループを選択した式で終了するように指示します。(式からこの演算子を削除するには、[-] をクリックします)。
-
高度な自由形式。エクスプレッションエディタ (Expressions Editor) を完全にオフにし、エクスプレッションリストを、複合エクスプレッションを入力できるテキスト領域にします。これは、ポリシー式を作成するための最も強力で難しい方法であり、NetScalerクラシック式言語に精通している方のみに推奨されます。
アドバンスト・フリー・フォーム・テキスト・エリアでのクラシック式の作成の詳細については、「 クラシックポリシーと式の設定」を参照してください。
注意: アドバンスフリーフォーム式編集モードに切り替えると、他のモードに戻すことはできません。このエクスプレッション編集モードは、使用が確実でない限り選択しないでください。
-
-
[任意の式に一致]、[すべての式に一致]、または [表形式の式] を選択した場合は、[ 追加 ] をクリックして [式の追加] ダイアログボックスを表示します。
キャッシュリダイレクションポリシーの場合は、式の種類を [全般] に設定しておく必要があります。
-
[フロータイプ(Flow Type)] ドロップダウンリストで、式のフロータイプを選択します。
フロータイプは、ポリシーが着信接続と発信接続のどちらを検査するかを決定します。次の 2 つの選択肢があります。
- REQ。着信接続または要求を検査するようにNetScalerアプライアンスを構成します。
- RES。発信接続または応答を検査するようにアプライアンスを設定します。
-
[プロトコル(Protocol)] ドロップダウンリストで、式のプロトコルを選択します。
プロトコルは、ポリシーが要求または応答で調べる情報のタイプを決定します。前のドロップダウンリストで [REQ] と [RES] のどちらを選択したかに応じて、次の 4 つの選択肢すべて、または 3 つだけを選択できます。
- HTTP。HTTP ヘッダーを検査するようにアプライアンスを設定します。
- SSL。SSL クライアント証明書を検査するようにアプライアンスを設定します。前のドロップダウンリストで [REQ (requests)] を選択した場合にのみ使用できます。
- TCP。TCP ヘッダーを検査するようにアプライアンスを設定します。
- IP。送信元または宛先 IP アドレスを検査するようにアプライアンスを設定します。
-
[修飾子] ドロップダウンリストから式の修飾子を選択します。
[Qualifier] ドロップダウンリストの内容は、選択したプロトコルによって異なります。次の表に、各プロトコルで使用できる選択肢を示します。
表1. 各プロトコルで使用できるキャッシュリダイレクションポリシー修飾子
プロトコル 修飾子 定義 HTTP METHOD リクエストで使用される HTTP メソッド。 - URL URL ヘッダーの内容。 - URLTOKENS HTTP ヘッダー内の URL トークン。 - 版 接続の HTTP バージョン。 - HEADER HTTP リクエストのヘッダー部分。 - URLLEN URL ヘッダーのコンテンツの長さ。 - URLQUERY URL ヘッダーの内容のクエリ部分。 - URLQUERYLEN URL ヘッダーのクエリ部分の長さ。 SSL CLIENT.CERT SSL クライアント証明書全体。 - CLIENT.CERT.SUBJECT クライアント証明書のサブジェクトフィールドの内容。 - CLIENT.CERT.ISSUER クライアント証明書の発行者。 - CLIENT.CERT.SIGALGO クライアント証明書で使用される署名アルゴリズム。 - CLIENT.CERT.VERSION クライアント証明書のバージョン。 - CLIENT.CERT.VALIDFROM クライアント証明書が有効になる日付。(開始日。) - CLIENT.CERT.VALIDTO クライアント証明書が無効になる日付。(終了日。) - CLIENT.CERT.SERIALNUMBER クライアント証明書のシリアル番号。 - CLIENT.CIPHER.TYPE クライアント証明書で使用される暗号化方式。 - CLIENT.CIPHER.BITS 暗号化キーの有効ビット数。 - CLIENT.SSL.VERSION クライアント証明書の SSL バージョン。 TCP SOURCEPORT TCP 接続の送信元ポート。 - DESTPORT TCP 接続の宛先ポート。 - MSS TCP 接続の最大セグメントサイズ (MSS)。 IP SOURCEIP 接続の送信元 IP アドレス。 - DESTIP 接続の宛先 IP アドレス。 -
[演算子] ドロップダウンリストから式の演算子を選択します。
選択内容は、前の手順で選択した修飾子によって異なります。このドロップダウンリストに表示できる演算子の完全なリストは次のとおりです。
- == . 次のテキスト文字列と完全に一致します。
- != . 次のテキスト文字列と一致しません。
-
. 次の整数より大きい。
- CONTAINS . 次のテキスト文字列が含まれます。
- CONTENTS . 指定されたヘッダー、URL、または URL クエリの内容。
- EXISTS . 指定されたヘッダーまたはクエリが存在します。
- NOTCONTAINS . 次のテキスト文字列は含まれません。
- NOTEXISTS . 指定されたヘッダーまたはクエリは存在しません。
このポリシーを特定のホストに送信されたリクエストに対して動作させる場合は、デフォルトの等号 (==) 記号のままにしておきます。
-
[値] テキストボックスが表示されている場合は、適切な文字列または数字をテキストボックスに入力します。
たとえば、このポリシーでホスト shopping.example.com に送信されるリクエストを選択する場合は、その文字列を [値] テキストボックスに入力します。
-
修飾子として HEADER を選択した場合は、[ヘッダー名] テキストボックスに目的のヘッダーを入力します。
-
「 OK」 をクリックして式を「式」リストに追加します。
-
手順 4 ~ 11 を繰り返して、さらに式を作成します。
- [ 閉じる ] をクリックして [式の追加] ダイアログボックスを閉じ、[ キャッシュリダイレクトポリシーの作成 ] ダイアログボックスに戻ります。
- 式の入力が完了したら、[ 作成] をクリックします。