アプリケーションテンプレートは、ポリシー式内の変数の宣言と、アプリケーション用に構成されたアクションをサポートします。ポリシー式およびアクションで変数を宣言する機能により、式内の事前設定された値(たとえば、サーバーのホスト名や Rewrite アクションのターゲットなどの設定可能なパラメータ)を、テンプレートのインポート先の環境に適した値で置き換えることができます。AppExpertアプリケーション・テンプレートに変数が構成されている場合、AppExpertアプリケーション・テンプレートのインポート時に表示されるAppExpertテンプレート・ウィザードには、「変数値の指定」ページが表示されます。このページでは、テンプレート用に構成されている変数に適切な値を指定できます。
例として、HTTP 要求の Host ヘッダーの値を評価するように設定されている次のポリシー式を考えます。
HTTP.REQ.HEADER("Host").CONTAINS("server1")
インポート時にサーバー名を設定できるようにするには、文字列「server1」 を変数として指定します。テンプレートのインポート時に、「変数」(Variables) タブで変数の新しい値を指定できます。
変数を作成したら、次の操作を実行できます。
-
既存の変数に追加の文字列を割り当てます。文字列の変数を作成した後、同じ式または異なる式の他の部分を選択し、変数に割り当てることができます。変数に割り当てる文字列は同じである必要はありません。インポート時に、変数に割り当てられたすべての文字列は、指定した値に置き換えられます。
-
変数に割り当てられている 1 つまたは複数の文字列を表示します。
-
変数を使用するすべてのエンティティとパラメータのリストを表示します。
アプリケーション・テンプレートのエクスポート・ウィザードでは、次のエンティティの特定のフィールドに変数を定義できます。
-
キャッシュポリシー
-
書き換えポリシー
-
リライトアクション
-
レスポンダーポリシー
-
レスポンダーのアクション
GUI を使用してポリシー式またはアクションで変数を設定するには、次の手順を実行します。
-
\[**AppExpert\] > \[変数\]**に移動します。
-
\[変数\] ページで、\[追加\] をクリックします。
-
\[変数の作成\] ページで、次のパラメータを設定します。 名称。 変数の名前。
スコープ。スコープを「グローバル」または「トランザクション」として選択します。
タイプ。テキスト、ulong、マップとして変数の種類を選択します。
失効します。有効期限を入力します。
満杯の場合*。 マップへの割り当てが設定された max-entries を超える場合に実行するアクション: lru-(デフォルト) は、マップ内で最も最近使用されていないエントリを再利用します。 undef-割り当てが、割り当てを実行するポリシーに未定義(Undef)の結果を返すように強制します。 可能な値:undef, lru デフォルト値:lru.
値がない場合。 値の有効期限(秒)。有効期限内に値が参照されない場合、値は削除されます。0(デフォルト)は有効期限がないことを意味します。 最小値:0, 最大値:31622400
\[初期化値\]。 この変数の初期化値。代入アクションが値を割り当てる前に参照された場合、シングルトン変数またはマップエントリが設定されます。シングルトン変数またはマップエントリにすでに値が割り当てられている場合、このパラメータを設定してもその変数の値には影響しません。デフォルト:0 (ウルン)、テキストの場合は NULL (最大長): 127
コメント。変数に関する簡単な説明。
-
[閉じる] をクリックします。