文字列マップ
文字列マップを使用して、デフォルトのポリシー構文を使用するすべてのCitrix ADC機能でパターンマッチングを実行できます。文字列マップは、キーと値のペアで構成されるCitrix ADCエンティティです。キーと値は、ASCII 形式または UTF-8 形式の文字列です。文字列比較では、2 つの新しい関数、MAP_STRING(
およびIS_STRINGMAP_KEY(
を使用します。
文字列マップを使用するポリシー設定は、ポリシー式を使用して文字列照合を行うポリシー設定よりもパフォーマンスが優れており、多数のキーと値のペアで文字列照合を実行するために必要なポリシーの数が少なくて済みます。文字列マップも直感的で設定が簡単で、構成が小さくなります。
文字列マップの仕組み
文字列マップはパターンセットと構造が似ており(パターンセットはインデックス値の文字列へのマッピングを定義し、文字列マップは文字列から文字列へのマッピングを定義します)、文字列マップの構成コマンド(add、bind、unbind、remove、show などのコマンド)は構文的に設定に似ていますパターンセットのコマンド。また、パターンセット内のインデックス値の場合と同様に、文字列マップ内の各キーはマップ全体で一意でなければなりません。次の表に、url_string_map という文字列マップを示します。このマップには、URL がキーと値として含まれています。
キー | 値 |
---|---|
/url_1.html | http://www.redirect_url_1.com/url_1.html |
/url_2.html | http://www.redirect_url_2.com/url_2.html |
/url_3.html | http://www.redirect_url_1.com/url_1.html |
表1. 文字列マップ「url_string_map」
次の表に、文字列マップ内のキーとの文字列照合を可能にするために導入された 2 つの関数を示します。文字列のマッチングは、常にキーで実行されます。さらに、次の関数は、文字列マップ内のキーと、式の接頭辞によって返される完全な文字列との比較を実行します。説明の例は、前の例を示しています。
文字列マップ内のキーとの文字列マッチングを有効にするために導入された 2 つの関数の詳細については、文字列マップ関数表pdf を参照してください。
文字列マップの設定
最初に文字列マップを作成し、それにキーと値のペアをバインドします。文字列マップは、コマンドラインインターフェイス(CLI)または設定ユーティリティから作成できます。
コマンドラインインターフェイスを使用して文字列マップを設定するには
コマンドプロンプトで、次の操作を行います。
- 文字列マップを作成します。
add policy stringmap
- キーと値のペアを文字列マップにバインドします。
bind policy stringmap
例:
bind policy stringmap url_string_map1 "/url_1.html" "http://www.redirect_url_1.com/url_1.html"
Citrix ADC GUIを使用して文字列マップを構成するには
[AppExpert] > [文字列マップ] に移動し、[追加] をクリックして、関連する詳細を指定します。
例:リダイレクトアクションを含むレスポンダーポリシー
次のユースケースには、リダイレクトアクションを含むレスポンダーポリシーが含まれます。以下の例では、最初の 4 つのコマンドが文字列マップ url_string_map を作成し、前の例で使用した 3 つのキーと値のペアをバインドします。マップを作成し、キーと値のペアをバインドしたら、クライアントを文字列マップ内の対応する URL または www.default.com にリダイレクトするレスポンダアクション(act_url_redirects)を作成します。また、要求された URL が url_string_map のいずれかのキーと一致するかどうかをチェックし、設定されたアクションを実行するレスポンダーポリシー(pol_url_redirects)も設定します。最後に、レスポンダーポリシーを、評価対象のクライアント要求を受信するコンテンツスイッチング仮想サーバーにバインドします。
add stringmap url_string_map
bind stringmap url_string_map /url_1.html http://www.redirect_url_1.com/url_1.html
bind stringmap url_string_map /url_2.html http://www.redirect_url_2.com/url_2.html
bind stringmap url_string_map /url_3.html http://www.redirect_url_1.com/url_1.html
`add responder action act_url_redirects redirect ‘HTTP.REQ.URL.MAP_STRING(“url_string_map”) ALT “www.default.com”’
add responder policy pol_url_redirects TRUE act_url_redirects
bind cs vserver csw_redirect -policyname pol_url_redirects -priority 1 -type request
Citrix ADC GUIを使用して文字列マップを構成するには
ストリングマップを設定するには、以下の手順に従います。
- ナビゲーションペインで、AppExpertを展開し、[文字列マップ] をクリックします。
- 詳細ウィンドウで、[追加] をクリックします。
- [文字列マップの作成] ページで、次のパラメータを設定します。
- Name:文字列マップの名前。
- キー値を設定します。文字列マップにバインドされた ASCII ベースのキー値エントリ
- コメント。文字列マップにバインドされたキー値に関する簡単な説明。
[作成]して[閉じる]をクリックします。