在Tomcat中指定Web应用的Context
1. 设置方式
通常有以下几种设置方式:
1.1. 方法一 放入特定的文件夹中。
- 修改为自定义ContextPath
把Web应用放到<catalina_home>/webapps
下对应的文件夹中。
比如,Web应用放在<catalina_home>/webapps/bookstore
目录下,则项目的对应的url为http://localhost:8080/bookstore/
;
- 修改为根路径
特别的,如果Web应用在<catalina_home>/webapps/ROOT
目录下,则该Web应用的url为http://localhost:8080/
。
这种方法Tomcat官方并不推荐。
1.2. 方法二 修改配置文件
- 修改为自定义ContextPath
修改<catalina_home>/conf/server.xml
。
比如,在<catalina_home>/conf/server.xml
的<Host>
元素下添加如下内容:
<Context path="/bookstore" docBase="/absolute/path/to/webapp"/>
则项目的对应的url为http://localhost:8080/bookstore/
;
- 修改为根路径
特别的,在<catalina_home>/conf/server.xml
的<Host>
元素下添加如下内容:
<Context path="/" docBase="/absolute/path/to/webapp"/>
则该Web应用的url为http://localhost:8080/
。
1.3. 方法三 添加配置文件
- 修改为自定义ContextPath
在<catalina_home>/conf/Catalina/localhost下添加配置文件。
比如在<catalina_home>/conf/Catalina/localhost
目录下添加一个配置文件bookstore.xml
,配置文件中中填入以下内容:
<Context path="something" docBase="/absolute/path/to/webapp" />
则项目的对应的url为http://localhost:8080/bookstore/
,服务器端运行的项目名称为something
。这个方法很方便的隐藏了项目的名称,对一些项目名称被固定不能更换,但外部访问时又想换个路径,非常有效。不过通常文件名
和path
相同。
- 修改为根路径
特别的,比如在<catalina_home>/conf/Catalina/localhost
目录下添加一个配置文件ROOT.xml
,配置文件中中填入以下内容:
<Context path="/" docBase="/absolute/path/to/webapp" />
则该Web应用的url为http://localhost:8080/
。
这样就没问题了!这种方法被认为是最好的办法。
2. 参考
HOWTO set the context path of a web application in Tomcat 7.0
Tomcat中三种部署项目的方法