我对Tomcat一无所知,但无论如何我还是试着去做。我们有一个Tomcat设置,它以单个域开头,但后来我们添加了另一个(' mysite.net')。我们的server.xml看起来像:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="mysite.net" appBase="webapps/mysite" path="" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="mysite_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
mysite.com运行正常 - 问题是www.mysite.com解析为我们的第一个站点(在/ usr / share / tomcat / webapps / ROOT下找到)。也许用.htaccess文件解决了这个问题?我的server.xml配置是完全错误的吗?
答案 0 :(得分:1)
如果mysite.com和mysite.net是完全独立的应用程序:例如,为www.mysite.net使用不同的文件夹,/usr/share/tomcat/mysite
。然后使用appBase="mysite"
作为第二个站点。这样你就可以为每个人提供一个ROOT.war。
如果mysite.com和mysite.net做同样的事情:在主机标记下添加别名。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Alias>www.mysite.net</Alias>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>