admin 发表于 2015-11-22 14:14

Tomcat的配置文件Context Path(三)

上下文路径(context path)是web应用的一个关键元素,它也用于虚拟主机(virtual host)。虚拟主机可以被定义为一种方法,通过这个方法可以在一个web服务器或一个IP上部署多个域名。Context path也用于为.war文件定义URL映射。那么为什么需要上下文路径?我们可以直接部署应用到根目录下啊。答案是:通过定义Context Path,我们可以减少服务器上的负载。当服务器接收到请求的URL,他将检查server.xml或者上下文路径,如果在这里找到,那么URL就从这里开始处理,否则服务器必须搜索所有的部署WAR文件,因此上下文路径减少了CPU周期。第二个优势是,能够更自由的定义应用程序,例如logging、appBase,DB connection等。一、启用context path
在tomcat里启用context path有两种方式:1、使用Tomcat web Application Manager GUI
在管理控制台中点击Manager App,进入控制界面,在Deploy项中,点击“选择文件”来选择一个WAR文件,点击Deploy按钮进行部署。
点击Deploy进行部署,部署完成后,可以在app列表中查看应用的部署状态和管理控制台。2、在server.xml中配置
在tomcat7中添加context path的另一种方式是编辑server.xml,这时就需要了解XML文件中的配置项。
[*]<Host>
[*]……
[*]<Context path="/sample" docBase="D:\ProgramFile\opt\sample.war" reloadable="true" swallowOutput="true">
[*]          <WatchedResource>WEB-INF/web.xml</WatchedResource>
[*]          <Logger className="org.apache.catalina.logger.FileLogger"
[*]            prefix="sample-log." suffix=".txt"
[*]            timestamp="true"/>
[*]      </Context>
[*]    </Host>
重启tomcat后,在管理控制台的sample为:
下面说明一下配置中的设置项,其中:Path=”/sample”:定义了服务器请求的路径URL,例如http://localhost:8080/sampledocBase=” D:\ProgramFile\opt\sample.war”:定义了该context path部署war文件的位置,可以使绝对地址也可以是相对地址。Reloadable=”true”:如果参数设置为true,对war文件的每个变化都会自动生效,而不用重启tomcat。swallowOutput=”true”:如果参数设置为true,System.out和System.err输出都会重定向到应用程序log中。
再次访问地址,跟上面一样的结果。

随机发货 发表于 2016-7-15 15:43

受教了!这个论坛果然很不错,适合学习
页: [1]
查看完整版本: Tomcat的配置文件Context Path(三)