猿问

如何在Tomcat7.0中设置Web应用程序的上下文路径

如何在Tomcat7.0中设置Web应用程序的上下文路径

我知道我可以将我的webapp(或者它是WAR文件)重命名为根部但这是个糟糕的方法,IMHO。现在我查了一下猫医生&上面写着

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

所以我试着做另一个它建议的方法。

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

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

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

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

任何指点都有帮助。


倚天杖
浏览 2000回答 3
3回答

蓝山帝景

你能做的是:添加一个名为ROOT.xml在……里面<catalina_home>/conf/Catalina/localhost/这个ROOT.xml将覆盖该引擎和主机(Catalina和localhost)Tomcat安装的根上下文的默认设置。在ROOT.xml文件中输入以下内容;<Context&nbsp; &nbsp;&nbsp;docBase="<yourApp>"&nbsp; &nbsp;&nbsp;path=""&nbsp; &nbsp;&nbsp;reloadable="true"&nbsp; />这里,<yourApp>是你的应用程序的名字。*)现在,您的应用程序是默认的应用程序,并将显示在http://localhost:8080但是,有一个副作用:您的应用程序将加载两次。一次localhost:8080一次localhost:8080/yourApp..要解决这个问题,您可以将应用程序放到外部。<catalina_home>/webapps并在ROOT.xml的docBase标记中使用相对路径或绝对路径。就像这样;<Context&nbsp; &nbsp;&nbsp;docBase="/opt/mywebapps/<yourApp>"&nbsp; &nbsp;&nbsp;path=""&nbsp; &nbsp;&nbsp;reloadable="true"&nbsp; />然后一切都会好起来的!

慕运维8079593

在Tomcat9.0中,我只需在server.xml<Context&nbsp;docBase="web"&nbsp;path="/web"&nbsp;reloadable="true"&nbsp;source="org.eclipse.jst.jee.server:web"/>到<Context&nbsp;docBase="web"&nbsp;path=""&nbsp;reloadable="true"&nbsp;source="org.eclipse.jst.jee.server:web"/>
随时随地看视频慕课网APP
我要回答