我必须在Eclipse Web项目中更改什么配置,以便Tomcat重定向URL而不指向项目URL的任何路径

问题描述

在Eclipse Oxygen中,我建立了一个名称的Web项目(方面动态Web模块 Java JavaScript ) MyProject

当我启动Eclipse的Tomcat(版本8.5)时,可以在项目URL http://localhost:8080/MyProject/下查看该站点。到现在为止还挺好。但是,如何配置服务器基础URL http://localhost:8080重定向到项目URL的Eclipse项目?

奖金问题:是否可以在不更改项目名称的情况下更改URL中的路径,因此项目URL是http://localhost:8080/FancyOtherName/而不是{{1} }?

解决方法

所以这里有一些选择。您可以将应用程序部署在服务器的根上下文中,以完全摆脱URL中的MyProject。有几种方法可以执行此操作,但是最简单的方法是将构建中的.war文件命名为ROOT.war。这会将应用程序部署在服务器的根上下文中,并从URL中删除MyProject。要在项目URL中更改应用程序的上下文,可以通过应用程序的某些配置(我没有足够的详细信息进行评论)或通过Tomcat配置来进行更改。通过使用ROOT.war MyProject部署应用程序 将从URL中删除,但是您可以在<Context path="" docBase="FancyOtherName"></Context>标签中将<Host>添加到$ CATALINA_HOME \ conf文件中,也可以将autoDeploy="false"deployOnStartup="false"添加到主机中标记,因此看起来像这样<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="false" deployOnStartup="false">。这将阻止应用程序部署两次,一次是在根上下文中,一次是在http://localhost:8080/FancyOtherName/,并且仅将应用程序部署在http://localhost:8080/FancyOtherName/。祝你好运!

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...