質問

私はISAPIリダイレクトの代替としてのTomcatの前にIIS7アプリケーションの要求のルーティングを使用しています。基本的なリバースプロキシ機能がうまく機能しているが、私は、最終的なリクエストヘッダに十分な情報を持っていません。私のアプリケーションは、いくつかのサブドメインに存在します。customerone.ourservice.com、customertwo.ourservice.comなど各サブドメインは、異なるブランドのグラフィックスと、同じアプリケーションを実行します。

アプリケーションは、現在、表示するブランディング伝えるためにHostヘッダを見ます。私はIIS7リバースプロキシを使用する場合、その情報は失われます。私のヘッダは次のようになります。

accept = text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
accept-charset = ISO-8859-1,utf-8;q=0.7,*;q=0.7
accept-encoding = gzip,deflate
accept-language = en-gb,en;q=0.7,en-us;q=0.3
cookie = JSESSIONID=......
host = 127.0.0.1:8080
max-forwards = 10
user-agent = Mozilla/5.0 (X11; U; Linux x86_64; en-GB; rv:1.9.0.15) Gecko/2009102815 Ubuntu/9.04 (jaunty) Firefox/3.0.15
x-original-url = /
x-forwarded-for = [iis7ip]:47567
x-arr-log-id = affbf81c-a5cf-4212-a43b-901cd9adcee6
connection = Keep-Alive

私は、リバースプロキシによって渡さリクエストヘッダに元のホストヘッダーを挿入することができます方法はありますか?

役に立ちましたか?

解決

preserveHostHeader:

アプリケーション要求のルーティングは、元のホストヘッダーを保存するオプションを有します。このオプションは、デフォルトはfalseです。あなたがそれを有効にすることができます:

"C:\Windows\System32\inetsrv\appcmd.exe" set config -section:system.webServer/proxy /preserveHostHeader:"True" /commit:apphost

他のヒント

あなたは手でpreserveHostHeaderフラグを設定することができます。

    <proxy enabled="true" preserveHostHeader="true" />

</system.webServer>

IISの設定GUIでは、system.webServer/proxyの下で、この値を見つけることができます。

" ここに画像の説明を入力する

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top