首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Tomcat 7.0中设置web应用程序的上下文路径

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

Stack Overflow用户
提问于 2011-09-02 05:51:26
回答 13查看 529.6K关注 0票数 166

我知道我可以将我的webapp (或者它的WAR文件)重命名为,但是这是一个糟糕的方式。现在,我查看了tomcat文档&它说

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

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

单独的上下文元素可以显式地定义:在应用程序文件内的/META-INF/context.xml处的单独文件中。

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

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/"/>

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

任何对你有帮助的建议。

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2011-10-10 06:20:52

你能做的是:

<catalina_home>/conf/Catalina/localhost/中添加名为ROOT.xml的文件

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

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

代码语言:javascript
复制
<Context 
  docBase="<yourApp>" 
  path="" 
  reloadable="true" 
/>

在这里,<yourApp>是您的应用程序的名称。:)

现在,您的应用程序已成为默认应用程序,并将显示在http://localhost:8080

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

代码语言:javascript
复制
<Context 
  docBase="/opt/mywebapps/<yourApp>" 
  path="" 
  reloadable="true" 
/>

然后一切都会好起来的!

票数 243
EN

Stack Overflow用户

发布于 2013-03-26 06:22:15

这是,唯一对我有效的解决方案。将以下内容添加到conf/server.xml文件的Host node中。

代码语言:javascript
复制
<Context path="" docBase="yourAppContextName">
 
  <!-- Default set of monitored resources -->
  <WatchedResource>WEB-INF/web.xml</WatchedResource>

</Context>
票数 14
EN

Stack Overflow用户

发布于 2017-03-05 15:41:10

在Tomcat9.0中,我只需在server.xml中更改以下内容

代码语言:javascript
复制
<Context docBase="web" path="/web" reloadable="true" source="org.eclipse.jst.jee.server:web"/>

代码语言:javascript
复制
<Context docBase="web" path="" reloadable="true" source="org.eclipse.jst.jee.server:web"/>
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7276989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档