0

IHS を使用して、受信 URL を Rewrite Rule によってアプリケーションにルーティングしています。しかし、アプリケーション内で使用できるように URL を保存することも必要です。

私の質問は、書き換えルールを実行する前に、着信 URL を Message HTTPHeader にコピーできるかどうかです。

例:

受信リクエスト

url: 
    http://abc.test/pqr/MPP

HTTP Body:
{
 "xml": {
   "name": "testName",
   "item": { "invoice": "447632938" }
  }
}

に変換する

url: 
    http://xyz.test/targetApp/ss

HTTP Header:
Context:"pqr/MPP"   

HTTP Body:

{
  "xml": {
    "name": "testName",
    "item": { "invoice": "447632938" }
  }
}

以下のコードを使用してヘッダーを設定しようとしましたが、ヘッダーが null になりました

SetEnvIf REQUEST_URI "(.*)/pqr/MPP" HTTP_CONTEXT=REQUEST_URI
RequestHeader set HTTP_CONTEXT %{HTTP_CONTEXT}e
4

1 に答える 1

0

以下のスクリプトは私にとってはうまくいきました。

SetEnvIf REQUEST_URI "(.*)/pgr/(.*)" HTTP_CONTEXT=$2
RequestHeader set HTTP_CONTEXT %{HTTP_CONTEXT}e

URLで試したとき: http://abc.test/pqr/XYZ

値を持つ HTTP ヘッダー「HTTP_CONTEXT」を取得しました

HTTP_CONTEXT = "XYZ"
于 2017-06-22T13:19:26.267 に答える