2011-09-14 54 views
2

我有一个webapp(基于springmvc 3.0.5/java 1.6),我正在部署到Linux机器上的tomcat(6.0.32)web服务器。目前我将war文件复制到服务器,并让tomcat为我解压。在Linux上的Tomcat webapp配置

相关线路在server.xml中:

<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false"> 
    <Context docBase="fooapp" path="/" reloadable="true" source="org.eclipse.jst.jee.server:Fooapp"/> 
</Host> 

我想要的web应用程序上下文路径为“/”,所以我不必添加/ fooapp /每​​一个网址。 http://www.mydomain.com/index.html而不是http://www.mydomain.com/fooapp/index.html

问题是,在我当前的配置中,webapp由BOTH“/”和“/ fooapp”上下文路径服务,因为tomcat解包了两次战争。一次到fooapp目录,另一次到ROOT目录。

我想Web应用程序被解压到fooapp目录一次,仍然从“/”上下文路径服务。这可以在Linux上完成,如果是的话如何?

注:这在Windows上完全符合我的要求,所以我希望linux可以做同样的事情。

回答

2

最简单的方法:

  1. server.xml删除您Context标签,
  2. 删除webapp/fooappwebapp/ROOT目录,
  3. 复制您fooapp.warwebapp目录ROOT.war

您可以在Tomcat's documentation中找到其他一些方法。

+0

这是非常有益的谢谢! – kasdega