我刚刚创建了我的Web项目(JSP / Servlet)的war文件。
项目名称:TestApp
当我在Tomcat 7中使用它时,我会像这样运行它:
本地主机:8080 / TestApp / 或 **www.maypage.com/testApp/**
好的,一切正常,但是我需要在没有项目名称的情况下运行它,如下所示:
本地主机:8080 和托管 **www.maypage.com**
我怎样才能做到这一点?谢谢。
而且我正在优化具有该配置选项的jsp / servlet托管。你知道那样主持吗?
为了不使用应用程序名称访问应用程序,您需要将其部署为根应用程序。有多种方法可以实现它,相关的答案对它的描述很好。
从以上链接复制的内容:
第一种方法: 首先[从bin目录(sh shutdown.sh)关闭您的tomcat,然后必须删除tomcat webapps文件夹的所有内容(rm -fr *),然后将WAR文件重命名为ROOT.war,最后从[从bin目录(sh startup.sh)] 第二种方法: 将您的war文件以其原始名称保留在CATALINA_BASE / webapps中- 在server.xml文件的Host元素中关闭autoDeploy和deployOnStartup。在server.xml中显式定义所有应用程序上下文,同时指定path和docBase。您必须这样做,因为您已禁用了所有Tomcat自动部署机制,并且Tomcat将不再部署您的应用程序,除非它在server.xml中找到了它们的上下文。 注意: 最后一种方法还意味着,为了对任何应用程序进行任何更改,您都必须停止并重新启动Tomcat。 第三种方法: 将您的war文件放置在CATALINA_BASE / webapps之外(它必须在外部以防止重复部署)。-在CATALINA_BASE / conf //中放置一个名为ROOT.xml的上下文文件。此上下文文件中的单个元素必须具有docBase属性,该属性指向您的war文件的位置。不应设置path元素- 它是从.xml文件的名称派生的,在本例中为ROOT.xml。有关详细信息,请参见上面的上下文容器。
第一种方法:
首先[从bin目录(sh shutdown.sh)关闭您的tomcat,然后必须删除tomcat webapps文件夹的所有内容(rm -fr *),然后将WAR文件重命名为ROOT.war,最后从[从bin目录(sh startup.sh)]
第二种方法:
将您的war文件以其原始名称保留在CATALINA_BASE / webapps中- 在server.xml文件的Host元素中关闭autoDeploy和deployOnStartup。在server.xml中显式定义所有应用程序上下文,同时指定path和docBase。您必须这样做,因为您已禁用了所有Tomcat自动部署机制,并且Tomcat将不再部署您的应用程序,除非它在server.xml中找到了它们的上下文。
注意:
最后一种方法还意味着,为了对任何应用程序进行任何更改,您都必须停止并重新启动Tomcat。
第三种方法:
将您的war文件放置在CATALINA_BASE / webapps之外(它必须在外部以防止重复部署)。-在CATALINA_BASE / conf //中放置一个名为ROOT.xml的上下文文件。此上下文文件中的单个元素必须具有docBase属性,该属性指向您的war文件的位置。不应设置path元素- 它是从.xml文件的名称派生的,在本例中为ROOT.xml。有关详细信息,请参见上面的上下文容器。