tomcat配置外部静态资源映射路径(windows和Linux部署)

如果你不想用ngnix配置的话,只单独使用tomcat的话可以看看这篇文章,接下来开始

使用场景

1.单机开发有时侯如果放在war下每次clean都会清理当前项目下静态文件特别折腾.

2.只有启动tomcat即可静态文件放在外面不会被删,就算未来要上服务也可以选择继续tomcat或者ngnix或者其他联合部署

3.如果可以就把前端的静态文件都放在静态文件把,那些css,js把项目弄得很累蕞

开始配置

windows配置

直接在servler.xml里修改 
1. 首先找到Tomcat下的conf文件夹下的server.xml。 
2. 通过习惯用的编辑器打开server.xml,可以看到Host标签,默认就有一个,一个Host代表一个站点,找到Host结束标签,我们在这中间配置虚拟路径。 
3. 以如下配置为例。
 

path指虚拟目录,与浏览器访问的路径相关,如果直接是path=”/”,访问就是http://localhost:8080/XX.png,如果为空串,也是一样,如果加了项目名,访问路径也要加,如path=”/static”,访问就是http://localhost:8080/static/XX.png。
docBase指实际存在路径,一般在硬盘里。如果我们的文件home直接放在了D盘下,那docBase=“D:static”
reloadable指有文件更新时,是否重新加载,一般设置为true,设置为true后,不需重新启动,就能验证我们的改动,不过修改了java文件后,可以重新编译需要一小会,在IDE下的控制台里可以看见输出,一般没有输出滚动出来的时候,就可以了。这三个一般经常设置。
debug指等级,一般设置为debug=“0”,提供最少的信息。设不设置无大影响。

配置server.xml

<Context path="/static" debug="0" docBase="D:static" reloadable="true" />
如果在eclipse配置要注意:直接在eclipse里面的servers的server.xml配置即可

linux配置

如果你的tomcat是放在跟我一样在/usr/local/apache-tomcat-7.0/下面

/usr/local/apache-tomcat-7.0/conf/server.xml
那打开它,像windows一样,增加如下

 <Context path="/static" docBase="/user/local/static" reloadable="true" crossContext="true"></Context>
其实windows和linux基本是一样的,这个多亏tomcat的跨平台性,哈哈

测试效果

启动tomcat程序,在static文件夹添加一张图片

打开浏览器,输入网址http://localhost:9080/static/hello.jpg(我的tomat端口可能和你们不一样,tomcat默认8080,我改了9080,所以你们自己改)

效果如下:

原文地址:https://www.cnblogs.com/jiathis/p/11313980.html