IIS7アプリケーション要求ルーティングとヘッダを変更
-
12-09-2019 - |
質問
私は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
の下で、この値を見つけることができます。
所属していません StackOverflow