我阅读了StackOverflow上的几个问题并谷歌搜索了数小时,但我找不到一个完整清晰的答案来解决我在一个Tomcat 5.5(带有Apache)上部署多个Grails应用程序的问题。也许有人可以指点我方向,或者我们可以在这里总结一个解决方案。
这个问题 Deploying multiple grails applications with Apache/Tomcat + Virtual Hosts 看起来很有前途,但没有起作用。也许我需要在Tomcat或Apache中进行其他更改?
情况如下:
在Tomcat的webapps目录中,我有两个war文件app1.war和app2.war,它们被Tomcat解压缩,并且我可以通过domain1.com/app1或domain1.com/app2访问它们(我删除了先前使用的ROOT.war和相关的webapps / ROOT /目录)
在Tomcat的 server.xml中,我有以下主机:
<!-- Logger shared by all Contexts related to this virtual host. -->
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="localhost_" suffix=".log"
timestamp="true"/>
<!-- Allow symlinks for the tomcat-docs webapp. This is required in
the Debian packages to make the Servlet/JSP API docs work. -->
<Context path="/tomcat-docs" docBase="tomcat-docs" debug="0">
<Resources className="org.apache.naming.resources.FileDirContext"
allowLinking="true" />
</Context>
</Host>
<Host name="domain1.com" appBase="webapps/app1" unpackWARs="true" autoDeploy="true"></Host>
<Host name="domain2.com" appBase="webapps/app2" unpackWARs="true" autoDeploy="true"></Host>
在Apache中,我有以下虚拟主机:
ServerName app1.com
JkMount /* default
DocumentRoot /var/lib/tomcat5.5/webapps/app1
<directory /var/lib/tomcat5.5/webapps/app1>
Options -Indexes
</directory>
LogLevel warn
ErrorLog /var/www/app1/logs/error.log
CustomLog /var/www/app1/logs/access.log common
问题:
我无法直接通过domain1.com和domain2.com访问这两个应用程序 - 我做错了什么?
提前致谢,
Joerg.