如何在Tomcat 7.0中设置Web应用程序的上下文路径?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (19)

我知道我可以将我的webapp放到根目录ROOT,但这是一种不好的方式,现tomcat文档说

不建议将元素直接放在server.xml文件中

我尝试了它提出的另一种方法。

在应用程序文件内的/META-INF/context.xml中定义

所以我这么做了一下:

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/"/>

但是在部署完成后,当我重新启动服务器时,它仍然无法在“/”加载上下文,但它仍然加载了 "/<WEB_APP_NAME>"

提问于
用户回答回答于

添加一个名为ROOT.xmlin 的文件<catalina_home>/conf/Catalina/localhost/

将以下内容输入到ROOT.xml文件中;

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

这里<yourApp>是你的应用程序的名称.. :)

在那里,你的应用程序现在是默认的应用程序,并且会显示 http://localhost:8080

但是,有一个副作用; 你的应用程序将被加载两次。一次localhost:8080和一次localhost:8080/yourApp

解决也很简单:

<Context 
  docBase="/opt/mywebapps/<yourApp>" 
  path="" 
  reloadable="true" 
/>

用户回答回答于

适用于我的解决方案。将其添加到conf/server.xml中

<Context path="" docBase="yourAppContextName">

  <!-- Default set of monitored resources -->
  <WatchedResource>WEB-INF/web.xml</WatchedResource>

</Context>

 

扫码关注云+社区