2012-04-03 14 views
9

Ho una pagina su host1.mydomain.com/page_from_host1.jsp e una pagina HTML su host2.mydomain.com/page_from_host2.html. host1 è una casella IIS7/Tomcat e host2 è una casella IIS7. Voglio consentire alla prima pagina di inviare un modulo, che visualizza la seconda pagina e l'URL non cambia.Come posso impostare il reverse proxy su IIS, consentendo la comunicazione tra host1.mydomain.com e host2.mydomain.com?

Cioè, l'URL è host1.mydomain.com/page_rom_host2.jsp, ma i contenuti della pagina provengono da host2.mydomain.com/page_from_host2.html.

Immagino di poter configurare un proxy inverso su IIS per realizzare questo, simile a mod_proxy, ma Apache Tomcat Server getta un po 'di chiave in tutto questo. Come posso configurare un proxy inverso per consentire la comunicazione tra host e mascherare l'URL?

Grazie.

risposta

6

FYI l'URL sembrava muoversi qui:

http://www.iis.net/learn/extensions/url-rewrite-module/reverse-proxy-with-url-rewrite-v2-and-application-request-routing

Ecco la sostanza di base:

Installare queste due cose:

  • Application Request Routing
  • URL Rewrite Module

Configura "Application Request Routing" nodo server

  • IIS -> Richiesta di applicazione Impostazioni
  • server proxy Routing Cache
  • controllo "Enable Proxy"

Poi si può configurare la riscrittura degli URL modulo secondo necessità.

0

Utilizzando seguente codice C# "Enable Proxy" può essere controllato/abilitato

ServerManager servMgr = new ServerManager(); 
Configuration config = servMgr.GetApplicationHostConfiguration(); 
ConfigurationSection proxySection = config.GetSection("system.webServer/proxy"); 
proxySection["enabled"] = true; 
servMgr.CommitChanges();