4

将 servlet 上下文置于tomcat 7根目录的最佳方法是什么?我在这里尝试过这篇文章,但对我没有用;我正在使用Apache Tomcat/7.0.42

PS:我不想将项目名称重命名为ROOT.war.

更新

我已context按照答案之一中的说明放置标签,但仍以tomcatroot 身份获取主页:

<Host name="localhost"  appBase="webapps"               
   <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
         prefix="localhost_access_log." suffix=".txt"
         pattern="%h %l %u %t &quot;%r&quot; %s %b" />    
   <Context docBase="app-renderer" path="/" reloadable="true" />
 </Host>

更新 2

问题出在 中的ROOT目录webapps,现在删除后我可以将应用程序作为根。

4

3 回答 3

5

在您的 Tomcatconf/server.xml文件中,您通常会有一个条目

<Context docBase="yourApp" path="/somePath" reloadable="true" source="someSource"/>

为您的应用程序。

将路径更改为/

<Context docBase="yourApp" path="/" reloadable="true" source="someSource"/>

Host在条目中添加这个。例如

<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 &quot;%r&quot; %s %b" />
<Context docBase="yourApp" path="/" reloadable="true" />
</Host>

其中docBase属性是应用程序在webapps文件夹中显示的名称。文档解释了每个属性的含义。

于 2013-08-30T13:52:34.453 回答
0

检查上下文文档。您正在寻找docBasewebapp 路径的path属性和根上下文的属性,例如,如属性文档中所述将其留空。

于 2013-08-30T13:49:57.713 回答
0

在不更改.war文件的情况下ROOT按照以下步骤操作:

1.创建一个名为的ROOT.xml文件tomcat/conf/Catalina/localhost/

2.将以下代码粘贴到ROOT.xml文件中:

<Context
  docBase="/home/user/YOUR_PROJECT/target/YOUR_PROJECT.war"
  path=""
  reloadable="true"
/>

现在您可以在 tomcat 根目录中访问您的项目。

有一个干净的项目删除tomcat/webapps/ROOT目录。

于 2014-05-18T13:43:13.270 回答