我已经完成了描述如何将给定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中添加上下文.
有人能指出我的替代方案吗?
谢谢.
我构建了一个名为myapp.war的war文件,并将其部署在Tomcat上.我已经将端口从8080更改为80,因此我可以在example.com/myapp(其中example.com是我的主机)上找到它.如何配置应用程序,以便当我访问example.com时,它会显示我的应用程序?我不想只是从example.com重定向到example.com/myapp - 我不想在URL中使用myapp.我是否必须设置Apache来提供这样的页面,或者我可以在Tomcat配置中使用虚拟主机吗?
我在将我的Web应用程序“ xyz”运行在DigitalOcean服务器中托管的tomcat 7服务器中时遇到麻烦:
http:// myDomain:8080 / myWebApp
我的.war文件的名称是“ .MyWebApp”。
在tomcat中部署.war文件后,该应用程序开始于:
http:// myDomain:8080 / MyWebApp / myWebApp
任何想法如何从URL中删除此“ MyWebApp”部分?
我已经看到了一些针对此问题的解决方案,它们主要是在localhost中运行应用程序的解决方案。他们建议更改我已经这样做的“ context.xml”文件:
<?xml version='1.0' encoding='utf-8'?>
<Context>
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
path="" docBase="MyWebApp" debug="0" reloadable="true"
</Context>
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!
不要将此标记为重复。我已经检查了所有适用于本地主机的解决方案,但不适用于数字海洋VPS。我想我在这里很具体。
先感谢您!