Modification des en-têtes avec IIS7 application routage de demande
-
12-09-2019 - |
Question
J'utilise IIS7 application demande de routage devant Tomcat comme remplacement pour la redirection ISAPI. La fonction proxy inverse de base fonctionne bien, mais je n'ai pas assez d'informations dans les en-têtes de demande finale. Mon application existe sur plusieurs sous-domaines:. Customerone.ourservice.com, customertwo.ourservice.com, etc. Chaque sous-domaine exécute la même application, mais avec des graphiques de marque
L'application ressemble actuellement à l'en-tête de l'hôte pour dire que l'image de marque pour afficher. Lorsque j'utilise le proxy inverse IIS7, cette information est perdue. Mes têtes sont maintenant:
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
Est-il possible que je peux insérer l'en-tête de l'hôte d'origine dans les en-têtes de requête transmis par le proxy inverse?
La solution
Application demande de routage a une option pour préserver l'en-tête d'hôte d'origine: preserveHostHeader. Cette option est par faux par défaut. Vous pouvez l'activer avec:
"C:\Windows\System32\inetsrv\appcmd.exe" set config -section:system.webServer/proxy /preserveHostHeader:"True" /commit:apphost