小编典典

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

tomcat

我知道我可以将我的Web应用程序(或WAR文件)重命名为 ROOT, 但这是一种糟糕的方法,恕我直言。现在我签出了tomcat文档,上面写着

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

因此,我尝试使用它建议的另一种方法。

可以明确定义各个上下文元素:在应用程序文件内/META-INF/context.xml中的单个文件中。

所以我/META-INF/context.xml用以下代码创建了一个

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

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

任何指针都有帮助。


阅读 357

收藏
2020-06-16

共1个答案

小编典典

您可以执行以下操作;

添加一个名为ROOT.xml<catalina_home>/conf/Catalina/localhost/

该ROOT.xml将覆盖该引擎和主机(Catalina和localhost)的tomcat安装的根上下文的默认设置。

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

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

<yourApp>是您的应用程序的名称.. :)

然后,您的应用程序现在是默认应用程序,并会显示在 http://localhost:8080

但是,有一个副作用。您的应用程序将被加载两次。一旦localhost:8080和一次localhost:8080/yourApp。要解决此问题,您可以将应用程序置于外部,<catalina_home>/webapps并在ROOT.xml的docBase标记中使用相对或绝对路径。像这样的东西;

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

然后应该一切正常!

2020-06-16