项目的实际使用中经常需要将当前项目设为tomcat的默认项目,而不是进入到tomcat的页面,有几种方法可以实现
方法一、删除webapps下ROOT项目
将自己的项目改名为ROOT,如果改完后没生效,建议清空tomcat中的work目录(缓存)
方法二、修改配置文件server.xml
增加<Context path="" docBase="Cluster" debug="0" reloadable="true" />节点,其中docBase为webapps中的项目。例子如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!--设置默认项目为baiduyun--> <Context path="" docBase="baiduyun" debug="0" reloadable="false" /> </Host>
方法三、修改配置文件server.xml
增加<Context path="" docBase="E:\apps\Cluster" debug="0" reloadable="true"/>节点,其中docBase为需要设为默认项目的绝对路径。注意,<Context>一定要加在<Host>节点中。例子如下:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!--设置默认项目为baiduyun--> <Context path="" docBase="D:\website\Tomcats\webapps\baiduyun" debug="0" reloadable="false" /> </Host>
附加说明
如果在实际生产环境中,可能会遇到多个Tomcat集群情况,我们会将其使用一个公共项目路径节省磁盘空间,比如下图
多个Tomcat公用一个webapps目录,将原本默认的Tomcat下的webapps目录内容拷贝过来一份
然后将多个Tomcat下的webapps清空,节省磁盘空间
然后将多个Tomcat中server.xml统一修改使用如下方式指定一个公共目录
<Host name="localhost" appBase="D:/website/UPUPW_NP7.0/Tomcats/webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="baiduyun_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host>
如果想要指定一个默认项目,修改成以下代码即可
<Host name="localhost" appBase="D:/website/UPUPW_NP7.0/Tomcats/webapps" unpackWARs="true" autoDeploy="true"> <!--指定项目路径,并设置默认项目为baiduyun--> <Context path="" docBase="baiduyun" debug="0" reloadable="false" />