Tomcat部署web项目的方法

内部应用

直接把war包复制粘贴到Tomcat 8.5/webapps目录下, 然后执行Tomcat 8.5/bin/startup.bat即可。

外部应用

  • docBase: 项目文件夹实际的位置, 子目录为WEB-INFMETA-INF的一个目录。
  • path: 虚拟路径, 浏览器访问本项目的路径, 上面例子为http://本机地址:端口/hello

配置conf/server.xml(官方不推荐)

打开Tomcat 8.5/conf/server.xml, 在<Host>标签插入<Context>标签。

1
2
3
4
5
6
7
8
9
<Service name="Catalina">
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- <Context path="url路径名" docBase="实际项目在磁盘中地址" /> -->
<Context path="/hello" docBase="war包解压路径" reloadable="true" privileged="true"/>
</Host>
</Engine>
</Service>

配置conf/context.xml

打开conf/context.xml可以看到里面已经配置了一个Context.
如果一个Tomcat只配置一个Web应用程序, 则可以直接修改这里的代码.

1
2
3
4
<Context>
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
</Context>

改为

1
2
3
4
<Context path="/hello" docBase="war包解压路径" reloadable="true" privileged="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
</Context>

配置conf/enginename/hostname/test.xml(推荐)

其实就是将conf/server.xml翻译一下。

打开Tomcat 8.5/conf/Catalina/localhost, 没有则自己创建目录, 新建一个test.xml文件。
这里的Catalina对应上面的Engine名, localhost对应上面的Host名.
访问路径为http://localhost:8080/test

1
2
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/" docBase="war包解压路径" reloadable="true" privileged="true"/>

参考资料