2012-04-03 14 views
9

Tengo una página en host1.mydomain.com/page_from_host1.jsp y una página HTML en host2.mydomain.com/page_from_host2.html. host1 es una caja IIS7/Tomcat y host2 es una caja IIS7. Quiero permitir que la primera página envíe un formulario, que muestra la segunda página, y la URL no cambia.¿Cómo puedo configurar el proxy inverso en IIS, permitiendo la comunicación entre host entre host1.mydomain.com y host2.mydomain.com?

Es decir, la dirección URL es host1.mydomain.com/page_rom_host2.jsp, pero el contenido de la página es de host2.mydomain.com/page_from_host2.html.

Me imagino que puedo configurar un proxy inverso en IIS para lograr esto, similar a mod_proxy, pero el servidor Apache Tomcat arroja un poco de una llave en todo esto. ¿Cómo puedo configurar un proxy inverso para permitir la comunicación entre hosts y enmascarar la URL?

Gracias.

Respuesta

6

FYI la URL parecía moverse aquí:

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

Aquí está la esencia básica:

instalar estas dos cosas:

  • Solicitud de aplicación de enrutamiento
  • Url módulo de reescritura

Configurar "Solicitud de aplicación de enrutamiento" nodo de servidor

  • IIS -> Solicitud de aplicación de enrutamiento de caché Configuración
  • Server Proxy
  • de verificación "Activar Proxy"

A continuación, se puede configurar la reescritura de URL módulo según sea necesario.

0

Mediante el uso siguiente código C# "Habilitar proxy" se puede comprobar/permitido

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