HTTP ルーティング・ルール・アクションの副次式ビルダー

副次式ビルダーは、AND、OR、NOT、および括弧によるグループ化を使用して、副次式から複雑なルール条件を作成する場合に使用します。副次式ビルダーは、変更内容を適用するときにルールを妥当性検査して、括弧数の不一致およびサポートされない論理演算子についてアラートします。

ODR のこの管理コンソール・ページを表示するには、「サーバー」>「サーバー・タイプ」>「オンデマンド・ルーター」>「ODR」>「オンデマンド・ルーター・プロパティー」>「ルーティング・ポリシー HTTP ルール」>「指定者」>「式」>「副次式ビルダー」をクリックします。

ODR クラスターのこの管理コンソール・ページを表示するには、「サーバー」>「クラスター」>「オンデマンド・ルーター・クラスター」>「ODR cluster」>「オンデマンド・ルーター・プロパティー」>「ルーティング・ポリシー HTTP ルール」>「指定者」>「式」>「副次式ビルダー」をクリックします。

オペランドの選択

ルーティングおよびサービス・ポリシー・オペランド

選択したプロトコルによって、異なるオペランドが表示されます。 次の表では、コンソールに表示されるオペランド名、それが式に表示される際の実際のオペランド、各オペランドごとの有効なプロトコル、および各オペランドの説明を示します。

表 1. オペランド
要求変数 有効なプロトコル 説明
virtualhost

HTTP

SOAP

Web アプリケーションを特定のホスト名に対して構成するために使用される要求の仮想ホスト・ターゲット。
virtualport

HTTP

Web アプリケーションを特定のポートに対して構成するために使用される要求の仮想ポート・ターゲット。
uri

HTTP

URI (Uniform Resource Identifier)。要求のパスを取得するために使用します。URL が "http://host:port/path?p1=v1" である場合、パスは "path" です。
ユーザー ID   要求を送信した認証ユーザーのユーザー ID を返します。
グループ ID   要求を送信した認証ユーザーのグループ名のリストを返します。
要求照会パラメーター名   ヘッダー名および値。
例えば、式 queryparm$timezone='EST' は、 要求に timezone という名前で値が EST の HTTP 照会パラメーターが含まれているかどうかをテストします。照会パラメーターが存在するかどうかをテストするには、 次の形式のいずれかを使用します。
queryparm$timezone IS NOT NULL
queryparm$timezone IS NULL
要求ヘッダー名

ヘッダー名および値。
例えば、式 header$Host='localhost' は、要求に値が localhost の HTTP ホスト・ヘッダーが含まれているかどうかをテストします。ホスト・ヘッダーが存在するかどうかをテストするには、 次のいずれかを使用します。
header$Host IS NOT NULL
header$Host IS NULL
Cookie ヘッダー名   Cookie 名。
例えば、式 cookie$My_Cookie_Name='My_Cookie_Value' は、My_Cookie_Name という名前で値が My_Cookie_Value の Cookie が含まれているかどうかをテストします。特定の Cookie が存在するかどうかをテストするには、次のいずれかの式を使用します。
cookie$MyCookieName IS NOT NULL
cookie$MyCookieName IS NULL
HTTPMethod

HTTP

SOAP

要求の HTTP メソッド。可能な値は、POST、GET、PUT、および DELETE です。
clienthost

HTTP

SOAP

IIOP

SIP

完全修飾クライアント・ホスト名。インターネット・プロトコル (IP) コマンドのホスト名の値です。このオペランドは>、>=、<、<= などの数値演算子はサポートしません
clientipv4

HTTP

SOAP

SIP

インターネット・プロトコル・バージョン 4 (IPv4) のドット付きクワッド・アドレス・タイプ n.n.n.n を使用した、クライアント・コンピューターの IP アドレス。
clientipv6

HTTP

SOAP

SIP

Request for Comments 1924 (RFC 1924) に準拠した、クライアント・コンピューターのインターネット・プロトコル・バージョン 6 (IPv6) 128 ビット・アドレス・タイプ x:x:x:x:x:x:x:x
serverhost

HTTP

SOAP

IIOP

SIP

サーバーの完全修飾ホスト名。 このオペランドは >、>=、<、<= などの数値演算子はサポートしません
serveripv4

HTTP

SOAP

SIP

IPv4 のドット付きクワッド・アドレス・タイプ n.n.n.n を使用した、サーバー・コンピューターの IP アドレス。
serveripv6

HTTP

SOAP

SIP

RFC 1924 に準拠した、サーバー・コンピューターの IPv6 128 ビット・アドレス・タイプ x:x:x:x:x:x:x:x
port

HTTP

SOAP

IIOP

SIP

要求が受信された listen ポート。
protocol

HTTP

SOAP

要求を伝送する通信プロトコル。現在サポートされているプロトコルは、HTTP、HTTPS、SOAP、および SOAPS です。
virtualportal

HTTP

SOAP

仮想ポータルは WebSphere® Portal Server 内で作成され、Intelligent Management は、WebSphere Portal Server とより適切に統合するためにこのオペランドをサポートします。仮想ポータルは、要求 URL から WebSphere Portal アプリケーションの Web モジュールのコンテキスト・ルートを取り去ったものです。指定された要求が定義された仮想ポータルに一致すると、該当ルールに定義されたルーティング・アクションが実行されます。
time

HTTP

SOAP

IIOP

このオペランドは、一定の要求を認可する必要がある日時を定義するのに使用されます。StartTime と EndTime という 2 つのオプション・フィールドがあります。要求がこの定義された時間枠外で受信された場合、その要求は処理されません。

開始時刻と終了時刻のフィールドの形式は dayOfWeek/dayOfMonth/month/year::hour:minute:second です。

例えば、2007 年 4 月 11 日 午後 1:03:45 は次のように指定します。

Thu/11/Apr/2007::13:03:45

いずれのフィールドも値 * でワイルドカードを使用できます。例えば、毎月の 1 日は */1 と指定します。

dayofWeek の値は Sun、Mon、Tue、Wed、Thu、Fri、Sat で、dayOfMonth の値は 1 から 31 です。

month 値は、12 の月を表わす非数値 (Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec) です。

year 値は、4 桁の年です。例えば 2007。

hour 値は 24 時間クロックの時刻です。例えば、8am は ::8 と表わします。minutesecond は 0 から 59 の整数です。

日付パラメーターを区切るにはスラッシュ (/) が使用され、日時の値を区切るには 2 重コロン (::) が使用され、時刻パラメーターを区切るにはコロン (:) が使用されます。 時刻オペランドが使用されるルール全体のブール結果が、ルーティング・アクションを決定するために使用されます。

percentage$<val>

HTTP

SOAP

IIOP

SIP

percentage オペランドは、時間の固定パーセンテージを true に評価します。例えば、 percentage$50 は、時間の平均 50% で trueに評価します。
rampup$<startTime>$<completionTime>

HTTP

SOAP

IIOP

SIP

rampup オペランドは、時間の可変パーセンテージを true に評価します。常に <startTime> の前には false に評価し、<completionTime> の後に true に評価します。 時間が <startTime> から <completionTime> に進むにつれ、true に評価します。パーセンテージは直線的に増加します。

<startTime><completionTime> の形式は day/month/year::hour:min:sec です。

day は日、month は月 (Jan、Feb、Mar、Apr、May、Jun、Jul、Aug、Sep、Oct、Nov、Dec)、year は 4 桁の年、hour は 24 時間クロックの 2 桁の時、min は 2 桁の分、sec は 2 桁の秒です。

例えば、

rampup$01/Jan/2007::08:00:00$01/Jan/2007::17:00:00 は、2007 年 1 月 1 日の午前 8 時に true への評価を開始する場合がありますが、常に同日の午後 5 時の増加完了時点で true と評価します。

オペレーター

  • 等しい - 大/小文字を無視 (EQUALSIGNORECASE): ストリングの大/小文字が無視されることを除き、'String = String' と同一です。したがって、'ABC' EQUALSIGNORECASE 'abc' は true に評価されます。('ABC' = 'abc') は false に評価されます。
  • 等しくない (<>): 非等価演算子は、オペランド値が入力された値と等しくないことを表します。
  • 次に含まれる (IN): この演算子は、複数の値を持つオペランドを単一の式で表します。例えば、port というオペランドで、ポート値が 908090909091 などの任意またはすべての値を表す場合、式フラグメントは port IN (9080,9090, 9091) となります。 大括弧内の値の表現方法は、ポートのデータ・タイプにより異なります。ポートが整数の場合、正しい構文は引用符なしの値です。ポートがストリングの場合、正しい構文は port IN (‘9080’, ‘9090’, ‘9091’) です。
  • 類似 (LIKE): この演算子は、ストリング・オペランド値のパターン・マッチングを表します。値には、パターン・マッチングを開始する位置にワイルドカード文字の % 記号 (%) が含まれている必要があります。例えば、式 host LIKE %blanca は、ワード blanca または blanca で終わる他のすべてのワードと一致し、式 host LIKE blanca% は、ワード blanca または blanca で始まる他のすべてのワードと一致し、式 host LIKE %blanca% はワード blanca またはスペルに blanca があるすべてのワードと一致します。
  • 類似 - 大/小文字を無視 (LIKEIGNORECASE): ストリングの大/小文字が無視されることを除き、'string like string' と同一です。
  • NULL 以外 (IS NOT NULL): この演算子は、照会の妥当性検査で、要求されたパラメーターが存在することを表します。
  • 連結 (+): この演算子は、結合された 2 つの文字ストリング 'abc' + 'def' = 'abcdef' を表します。
  • 類似 - 次に含まれる (LIKEIN): この演算子は、string likein (string1、string2、string3 など) とすると、likein の左方のストリングが stringN の 1 つ以上のストリングと一致している場合に true と評価されることを表します。
  • NULL (IS NULL): この演算子は、照会の妥当性検査で、要求されたパラメーターが存在しないことを表します。
  • 等しい ( = ): 等価演算子は、大/小文字を区別した一致を表します。

選択する演算子に応じて、作成する副次式の値を入力します。

副次式ビルダー

指定したオペランド、演算子、および値の結果として副次式を生成します。

付加

副次式を新規ルールに追加します。



ファイル名: http_subexpression.html