
En breve:
IIS 7+Apache Tomcat 7+ isapi_redirect.dll
:
Tengo una aplicación Tomcat implementada y en funcionamiento disponible en http://localhost:8080/my_app
.
Me gustaría ver el mismo contenido debajo http://my_app.local
(y NO el sitio Tomcat predeterminado [que puede ver a continuación]).
Lo configuré isapi_redirect.dll
, por lo que ahora my_app.local
el contenido es igual al localhost:8080
de, pero no es suficiente, me gustaría mapearlo localhost:8080/my_app
debajo my_app.local
. (TENGO 127.0.0.1 my_app.local
un archivo de hosts, por lo que ya puedo abrirlo my_app.local
, PERO ahora solo muestra el sitio Tomcat predeterminado (el mismo que está disponible en http://localhost:8080
)).
Por favor lea lo que ya he probado:
Explicado más tiempo:
TengoIIS 7(7.5.7600.16385) yApache Tomcat/7.0.22instalado.
- Implementé una aplicación (llamémosla "
my_app
") en Tomcat, a la que ahora se puede acceder enhttp://localhost:8080/my_app
, funciona bien. Agregué un nuevo sitio web en el panel de IIS con la ruta de Tomcat implementadamy_app
, que se ve así: "c:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\my_app
" - Vinculé el nombre del host
my_app.local
. - Después de eso, configuré
isapi_redirect.dll
comoeste(o eso). - Ahora, cuando abro
http://my_app.local
, puedo ver el sitio Tomcat predeterminado (ver más abajo), ¡que es el mismo que el contenido debajohttp://localhost:8080/
! (¡¡¡Ese es el problema!!!) - PERO debajo
http://my_app.local
me gustaría ver el mismo contenido que debajohttp://localhost:8080/my_app
.
¿Cómo puedo hacer eso? ¡¡Muchas gracias por adelantado!!
mis archivos de configuración:
- isapi_redirect.properties(Hice una unión de directorio con c:\tomcat, por lo que esto también funciona :))
- trabajadores.propiedades
- uriworkermap.properties
- reescrituras.properties (vacío)
ACTUALIZAR
También encontré esto:http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html
Caso B: debe ocultar los componentes de la ruta para todas las solicitudes que van a la aplicación. Aquí está la receta para el caso en el que desea ocultar el primer componente de ruta /myapp. Las manipulaciones más complejas se dejan como ejercicio al lector. Primero la solución para el caso de Apache httpd:
- Utilice mod_rewrite para agregar /myapp a todas las solicitudes antes de reenviarlas al backend: [...]
- Utilice mod_headers para reescribir cualquier redireccionamiento HTTP que pueda devolver su aplicación. [...]
- Utilice mod_headers nuevamente para reescribir las rutas contenidas en las cookies que su aplicación pueda configurar. [...]
Si está utilizando Microsoft IISComo servidor web, el complemento ISAPI proporciona una forma de realizar el primer paso con una función incorporada.Usted define un archivo de mapeopara cambios de prefijo simples como este:
# Add a context prefix to all requests ... /=/myapp/ # ... or change some prefix ... /oldapp/=/myapp/
y luego ponga el nombre del archivo en la
rewrite_rule_file
entrada del registro o de suisapi_redirect.properties
archivo. En suuriworkermap.properties
archivo, aún necesita asignar las URL tal como están antes de volver a escribirlas. [...]
No hay soporte para los pasos 2 (reescribir respuestas de redireccionamiento) o 3 (reescribir rutas de cookies).
Me sorprendió que escriba "No hay soporte para los pasos 2 (reescribir respuestas de redireccionamiento) o 3 (reescribir rutas de cookies).", No sé si sigue siendo cierto, pero ¿luego qué? ¿Estoy estancado otra vez?
Respuesta1
Dependiendo de su objetivo (¿URL fácil de recordar?), tal vez esté bien simplementeredirigirmi_aplicación.local -> mi_aplicación.local:8080/mi_aplicación?
Esto noesconderel sitio de destino, sin embargo.
Configure un nuevo sitio IIS en my_app.local y déjeloredirigira su aplicación :8080/my_app.
http://technet.microsoft.com/en-us/library/cc732930(WS.10).aspx
Respuesta2
¿Puedes probar esto? http://blogs.iis.net/carlosag/archive/2010/04/01/setting-up-a-reverse-proxy-using-iis-url-rewrite-and-arr.aspx
Esto parece ser lo que necesita: reescritura de URL y enrutamiento de aplicaciones.