有时候文件夹太大,不想放在tomcat webapps里面,需要tomcat把项目放到非webapp目录下读取自定义路径下的项目、
一、设置方法
方法一:
废话不多说先说设置方法,好处后面说,这里以tomcat7或8为例,最新的tomcat9没试过,不过应该差不多
1.首先进入tomcat的conf目录下,新建名称为 Catalina 的文件夹
2.进入Catalina文件夹下,新建名称为 localhost的文件夹
3.进入localhost文件价下,新建名称为ROOT.xml(后面解释为何是叫ROOT,完整路径为:tomcat/conf/Catalina/localhost/ROOT.xml),ROOT.xml内容如下:
<Context path="" docBase="D:/xxxx/xxxx/目录" reloadable="false" antiJARLocking="true" antiResourceLocking="false"></Context>
4.说明:
docBase:你想设置的tomcat加载项目的路径
path="" :path设置为空默认覆盖tomcat的ROOT目录,而我们访问访问ROOT目录是无需项目名称的,直接localhost:8080即可。所以第三步中我们新建的xml名称为ROOT.xml。这样做的目的就是项目url的时候可以隐藏项目名字,避免暴露。
path也可以设置为自己想要的名字,但是如果这么做,那么第三步中,ROOT.xml的名字必须和path设置的一模一样。且访问项目的时候路径为 localhost:8080/path里设置的名字,这么做也可以隐藏真实的项目名字,个人更倾向于直接隐藏掉,看个人喜好
方法二:
直接修改conf目录下的server.xml文件,具体如下:
找到 Host节点 ,在其中添加:<Context path="" docBase="路径" reloadable="true"></Context>
不推荐第二种直接修改server.xml的方式,个人建议使用第一种。