我们都知道在Tomcat服务器上部署项目只要将项目打包,然后放到webapps目录下就可以了,为什么还需要配置虚拟路径?
1、在实际开发中,部署测试项目时,要将项目打成war包放到webapps目录下覆盖原来的版本,较为麻烦。
2、项目比较大时,全部放在同一个目录下,盘符压力过大。
如何配置虚拟路径呢?
例如:以下目录结构
D: | |||
Java | |||
filename | |||
apache-tomcat-8.0.0 | |||
bin | |||
conf | |||
catalina | |||
localhost | |||
webapps |
在localhost目录下新建文件(项目名.xml),该案例为filename.xml
在文件中编写:<Context docBase="D:\Java\filename" path="/filename" /> 即可。
如何配置虚拟地址呢?(仅学习,开发中不常用)
当我想用www.jd.com访问我的项目时,就需要配置虚拟地址。
1、在 Tomcat 的 conf 中的 server.xml 文件中配置。
原标签为:
<Server>
<Service>
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8"/>
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
改为下列标签即可:
<Server>
<Service>
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="utf-8"/>
<Engine name="Catalina" defaultHost="www.jd.com">
<Host name="www.jd.com" appBase="D:\Java\filename" >
<Context docBase="D:\Java\filename" path="/" />
</Host>
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
2、将本机的C:\Windows\System32\drivers\ect\host 文件末端增加映射。
127.0.0.1 www.jd.com
整个操作流程:
www.jd.com ====> 本机host中找映射关系 ====> server.xml中找Engine的defaultHost ====> path="/" ====> docBase="D:\Java\filename"