需求: 把发布到Tomcat下的web项目,访问路径去掉项目名称
就是说我在服务器上发布的网页,不需要加项目名,根据端口号就能直接访问了
方法一:
原理:Tomcat的默认根目录是ROOT,实际上ROOT这个项目在实际生产环境是没有用的,所以我们可以用我们的项目覆盖ROOT项目
操作过程:
1.删除ROOT下所有文件及文件夹
2.把我们项目的war包解压后,项目目录下的所有文件和子目录都拷贝到ROOT目录下即可 或者干脆:直接删掉ROOT目录,然后把我们的项目打包名称改成ROOT.war,放到webapps下就行
方式二:(推荐)
原理:Tomcat本身可以配置虚拟目录。方法就是在Server.xml中节点下加入Context信息。如我们可以配置<Context path="/abc" docBase=“D:\app\abc” …/>,那我们可以通过地址http://localhost:8080/abc来访问我们放在D:\app\下面的abc项目。我们可以把这个path="/abc"修改为path=""。意思就是把abc映射到根目录,访问路径就会变成http://localhost:8080/。
操作过程: 按照配置虚拟目录的方式,在下添加一个Context节点,具体配置如下:
<Engine name="Catalina" defaultHost="localhost"...>
...
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="" docBase="你的项目名" reloadable="true" />
<!--注:我这里使用的是相对路径,项目是放在Tomcat的webapps目录下的,当然也可以改为绝对路径-->
...
</Host>
...
</Engine>
如果端口是8080, 即可直接 http://ip:8080 就能访问