前言:很多时候Tomcat部署好Web项目之后访问项目的时候都需要加上端口号和项目名,如:http://localhost:8080/项目名,下面我会介绍可以不用输端口号和项目名便可以直接进行访问的方法,其实就是修改Tomcat下conf目录中的server.xml配置文件。
通常Tomcat部署的Web项目请求URL为:
http://ip:port/project/index.jsp
ip
:tomcat
部署服务器地址port
:tomcat
绑定端口号project
:项目名称index.jsp
:具体访问页面
1、省略项目名称的配置
找到Tomcat安装
目录下conf
目录中server.xml
,在Host标签中添加<Context docBase="项目名称" path="/"/>
。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="项目名" path="/"/>
</Host>
如下图:
这样访问URL变成:http://ip:port/index.jsp
只需要输入http://localhost:8080/ ,就可以直接访问项目了。
2、省略端口号的配置
TCP/IP
协议默认80
端口访问,大部分网站URL
不含端口号是因为都是使用的80
端口。Tomcat
默认的访问端口为8080
,所以修改Tomcat
端口号为80
端口即可。Tomcat
目录下conf
文件中的server.xml
,在Connector
标签中port
属性修改为80
。
这样访问URL变成:http://ip/project/index.jsp
只需要输入:http://localhost/项目名称,就可以直接访问项目了。
3、测试URL省略端口号和项目名称访问项目
综上所述,如果是既想省略端口号又想省略项目名称,只需要把步骤1和步骤2同时修改就可以了。
例如直接输入:http://localhost就可以访问项目了
补充Tomcat使用常识:
有没有遇到过Tomcat下bin目录中运行Tomcat7.exe或者老版的startup.bat文件,但是Tomcat命令行启动一闪而过就消失的情况?
、
解决方案:我相信你的环境变量一定没有配错,真正的原因是你已经运行了一个Tomcat应用容器,可能是你的IDEA中运行的Tomcat没有关闭,只要关掉Tomcat的connect连接就可以了。
4、Tomcat中的webapps文件夹和ROOT目录的区别
4.1、项目在webapps目录
将项目的war包放在webapps目录下,运行tomcat会自动解压缩并部署为应用。
访问路径为 http://localhost:8088/ssm ,8088是tomcat端口号,在server.xml,修改 HTTP/1.1 的端口号,ssm为项目打成war包的名称
4.2、项目在 ROOT 目录(可以去除项目名)
手动将war包解压到ROOT目录或者直接删除ROOT目录并修改war包名为ROOT.war让Tomcat自动解压
访问路径为 http://localhost:8088/,相比webapps目录,访问路径中去除了项目名
总结:
- ROOT相比webapps目录,Tomcat服务器优先去webapps目录下找项目,如果有则显示,没有则去ROOT找,ROOT可以去除访问路径中的项目名。
- 如果请求路径当前不想要目录名,那么可以通过创建webapps下面创建ROOT目录,然后手动将war包解压到ROOT目录,然后删除原有的war包,这样tomcat启动的时候就不会自动解压war包,同时也不会生成对应war包名称的文件。