tomcat的server.xml配置
- <Host>标签
appBase属性:
1 这个目录下面的子目录将自动被部署为应用。
2 这个目录下面的.war文件将被自动解压缩并部署为应用
一般默认值为:webapps
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> </Host>
autoDeploy属性:
若autoDeploy="true",则两次部署web应用程序。原因是:
第一次因server.xml中的Context配置而被部署(因为deployOnStartup="true"),
第二次因为autoDeploy="true"而发生自动部署(默认情况下,在没有显示Context的这些属性时,它们的默认值都是true)。
需要手动设置autoDeploy="false",避免在server.xml中增加Context配置时两次部署相同的web应用程序。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false"> </Host>
path属性:
使用<Context>标签时运用该属性,path="",tomcat把web应用程序映射为root URI路径
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/usr/local/webapp" debug="0" reloadable="true" crossContext="true"/> </Host>
docBase属性:
使用<Context>标签时运用该属性,表示指向了你某个应用的目录,如果你想自己指定路径,那么应该在docBase里面
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/usr/local/webapp" debug="0" reloadable="true" crossContext="true"/> </Host>
reloadable属性:
如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用。
在开发阶段将reloadable属性设为true,有助于调试servlet和其它的class文件,但这样用加重服务器运行负荷,建议在Web应用的生产线上将reloadable设为false。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="/usr/local/webapp" debug="0" reloadable="false" crossContext="true"/> </Host>