我在Eclipse中开发了一个动态Web项目.现在我可以使用以下URL通过浏览器访问它:
http://localhost:8080/MyDynamicWebApp
Run Code Online (Sandbox Code Playgroud)
现在我想将访问URL更改为
http://localhost:8080/app
Run Code Online (Sandbox Code Playgroud)
我从项目"属性| Web项目设置|上下文根"中更改了上下文根.
但它没有用.Web应用程序仍具有之前的访问URL.我已经在Tomcat上重新部署了应用程序,重新启动了Tomcat并完成了应该完成的所有操作,但访问URL与之前的相同.
我发现该server.xml
文件没有附加WAR
文件.那么Tomcat如何确定我的Web应用程序的上下文根server.xml
并允许我通过该URL访问应用程序?
我通过添加"动态Web模块"方面从Eclipse部署.war应用程序,然后右键单击项目并选择"Run As - > Run on Server".
这很好用,但默认情况下项目部署到/web
Tomcat 的上下文,因为项目名称是web
.有没有办法从Eclipse部署到Tomcat而无需将项目名称更改为ROOT?
我已经完成了描述如何将给定WAR(比如abc.war)配置为tomcat中的默认web-app的线程.
或
将abc.war重命名为ROOT.war
要么
在$ {tomcat.home}/conf/Catalina/localhost中使用path =""创建上下文ROOT.xml,并将docBase设置为war的相对/绝对路径(将abc.war保留在webapps之外以避免双重部署).
这两个解决方案都会在webapps(appBase)目录中生成ROOT.war.但是我想在webapps中保留WAR名称(abc.war)而没有单独的ROOT.war来实现这一点.
在我的案例中有一个解决方案是在server.xml中的<Host>标记下添加一个上下文.但是根据Tomcat 7 Doc,不建议直接在server.xml中添加上下文.
有人能指出我的替代方案吗?
谢谢.
基本上我想在 Eclipse 中访问我的项目时删除项目名称。
因此,目前,当我想访问我的网络应用程序的链接时,我必须将其设置为“localhost:8080/project_name/blah_blah_blah
但我希望可以通过 just 访问它” localhost:8080/blah_blah_blah
,或者说“项目本身应该可以通过 just 访问” localhost:8080
。
通过谷歌搜索,我发现tomcat 的 URL 问题包括项目名称,但在我的情况下,我的上下文根是/
默认的。
仅供参考:这是我 Eclipse 中唯一的项目