首页 > 代码库 > Tomcat 仅用ip和端口 不用项目名就能访问项目
Tomcat 仅用ip和端口 不用项目名就能访问项目
今天发现生产上tomcat项目 仅用ip+端口 就能访问项目,觉得很奇怪,百思不得其解,各种尝试,终于找出原因
例:
http://192.168.50.248:8081/login.htm 能直接进入项目的登录页面
http://192.168.50.248:8081/project/login.htm 也能进入项目的登录页面
于是,我本地tomcat尝试了下,发现如果不加项目名,访问就404了,
后来我加了项目名,登录页面能访问,但是登录成功,跳转到index.htm的时候,项目名又不见了 而且响应又是404
后面发现,原来是tomcat默认启动项目惹的祸,如果配置了tomcat默认启动项目,就可以不用项目名也能访问项目
具体操作如下:
1、打开tomcat安装根目录,打开conf目录下service.xml,找到<Host>节点,并且在该节点下新增:
<Context docBase="/home/tomcat/webapps/project" path="" debug="0" reloadable="true" />
说明:紫色部位为 你的项目路径,由于我是放到webapps目录下,所以就指向webapps
2、打开tomcat目录下的webapps目录,找到ROOT项目,将其改成另一个名字
3、重启Tomcat
重启成功后就能直接在浏览器中用 ip地址+端口 访问项目了
例:http://localhost:8081/login.htm
最后:我还存在一个疑问,按道理我最开始的路径有项目名,那么我接下来的 相对路径请求 应该也会带有项目名的
就好像http://192.168.50.248:8081/project/login.htm 请求是可以访问登录页面的,但是为什么我请求成功,return "/index" 的时候,
按正常来说应该返回到http://192.168.50.248:8081/project/index.htm
可是返回的时候把项目名也丢了,地址变成了http://192.168.50.248:8081/index.htm ,这就是我很疑问的地方,试了很多地方,也不知道哪里配置的
Tomcat 仅用ip和端口 不用项目名就能访问项目