tomcat为什么要加载两次 配置文件
1个回答
展开全部
appBase与docBase区别
appBase是指定虚拟主机的目录,可以指定绝对目录,也可以指定相对于<CATALINA_HOME>的相对目录.如果没有此项,默认为<CATALINA_HOME>/webapps。
docBase是指定Web应用的文件路径.可以给定绝对路径,也可以给定相对于Host的appBase属性的相对路径. 如果Web应用采用开放目录结构,那就指定Web应用的根目录;如果Web应用是个WAR文件,那就指定WAR文件的路径。
tomcat配置文件配置以下参数时
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
</Host>
每次启动tomcat,项目会出现被加载两次的问题,
出现上述问题的原因是tomcat加载玩appBase="webapps"之后又去加载docBase,因此造成加载两次项目的问题,修改path参数path="\Test"(项目名称),配置文件内容是
<Host name="localhost" appBase="D:/apache-tomcat-7.0.53"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="\Test" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
如果不想修改path="Test"的参数,那么可以修改appBase="webapps"的参数。这样的方式也可以解决当前多次加载问题;appBase的参数指到其他文件目录不能出现在tomcat的webapps目录下,这样也可以访问根目录不用敲项目名称。配置文件内容是
<Host name="localhost" appBase="D:/apache-tomcat-7.0.53"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
</Host>
如果项目不是在MyEclipse中启动而是在linux操作系统中启动,可以把项目搬到其他目录中,前提是不能在webapps目录下,appBase="webapps"参数可有可无,配置文件内容是
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/Test" debug="0" reloadable="true" />
</Host>
appBase是指定虚拟主机的目录,可以指定绝对目录,也可以指定相对于<CATALINA_HOME>的相对目录.如果没有此项,默认为<CATALINA_HOME>/webapps。
docBase是指定Web应用的文件路径.可以给定绝对路径,也可以给定相对于Host的appBase属性的相对路径. 如果Web应用采用开放目录结构,那就指定Web应用的根目录;如果Web应用是个WAR文件,那就指定WAR文件的路径。
tomcat配置文件配置以下参数时
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
</Host>
每次启动tomcat,项目会出现被加载两次的问题,
出现上述问题的原因是tomcat加载玩appBase="webapps"之后又去加载docBase,因此造成加载两次项目的问题,修改path参数path="\Test"(项目名称),配置文件内容是
<Host name="localhost" appBase="D:/apache-tomcat-7.0.53"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="\Test" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
如果不想修改path="Test"的参数,那么可以修改appBase="webapps"的参数。这样的方式也可以解决当前多次加载问题;appBase的参数指到其他文件目录不能出现在tomcat的webapps目录下,这样也可以访问根目录不用敲项目名称。配置文件内容是
<Host name="localhost" appBase="D:/apache-tomcat-7.0.53"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/webapps/Test" debug="0" reloadable="true" />
</Host>
如果项目不是在MyEclipse中启动而是在linux操作系统中启动,可以把项目搬到其他目录中,前提是不能在webapps目录下,appBase="webapps"参数可有可无,配置文件内容是
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="D:/apache-tomcat-7.0.53/Test" debug="0" reloadable="true" />
</Host>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |