2009-11-26 15 views
6

que no he sido capaz de averiguar cómo implementar múltiples aplicaciones Grails con Apache/Tomcat en una máquina virtual está asignado a cada aplicación grialesDespliegue de aplicaciones múltiples Grails con Apache/Tomcat + Máquinas virtuales

puedo conseguir de modo que

http://virtualhost1.example.com/myGrailsApplication-0.1/ 

obras, pero lo que yo quiero es que

http://virtualhost1.example.com/ 

para ir directamente a mi solicitud. Una gran cantidad de sitios de tutoriales en la web solo hacen que su aplicación web sea la "ROOT", pero eso no funcionará en un entorno de host virtual de grails-app.

He intentado utilizar las etiquetas

<Host name="virtualhost1.example.com" ...> </Host> 

en el archivo tomcat/conf/server.xml, pero no parecía que hacer nada (y, sí, he reiniciado Tomcat cada vez que lo cambié.)

También probé todo lo que se me ocurrió en mi archivo de configuración de apache para el host virtual, y no pude hacerlo funcionar.

Entonces, ¿cómo puedo deshacerme del nombre de la aplicación en la URL cuando tengo varios webapps grails, hosts virtuales, y no quiero que mi aplicación web sea "ROOT"?

Respuesta

3

Supongo que está utilizando mod_jk para conectar Apache & Tomcat. Si es así, usted tendrá que tener a configure virtual hosting within Tomcat as well as Apache (múltiples <Host> declarations en su conf/server.xml)

Esto básicamente significa que usted tendrá dos <Host ...> declaraciones dentro conf/server.xml. Ellos tienen diferentes nombres, y AppBase, pero todavía tendrán que nombrar la guerra ROOT.war

El ejemplo que dio fue:

<Engine name="Catalina" defaultHost="ren"> 
    <Host name="ren" appBase="renapps"/> 
    <Host name="stimpy" appBase="stimpyapps"/> 
</Engine> 

Después de configurar el DNS de su virtual " <host> s '(al igual que Apache) tendrá que poner su ROOT.war (s) en carpetas separadas {renapps, stimpyapps} en lugar de la carpeta predeterminada' webapps '

Este método funciona, pero hay otro método usando mod_proxy en lugar de mod_jk. No estoy tan familiarizado con mod_proxy, pero básicamente tendrías la manija del conector traduciendo el contexto raíz al contexto real. Así que después de su configurado lo haría de proxy peticiones & adelante enviados a http://virtualhost1.example.com/ al contexto correcto dentro de Tomcat (/myGrailsApplication-0.1/)

Háganos saber lo que encuentre! ¿Alguien más hace esto con mod_proxy?

+1

Gracias! Voy a intentarlo tan pronto como me recupere de mi sobredosis de Turkey/Pie and Wine ... –

+0

¡Sí! Funciona. Muchas gracias. –

+0

Mi respuesta aquí: http://stackoverflow.com/questions/5751662/how-to-deploy-multiple-grails-apps-on-one-tomcat-apache usa mod_proxy. – Chris

Cuestiones relacionadas