Tomcat(三).项目访问路径去掉项目名之tomcat配置

在Tomcat(二).web容器Tomcat知识点一文中,我们直接将项目war包放在tomcat/webapps目录下,访问:http://localhost:8080/helloServlet/login.html,需要加上helloServlet,那么如何不需要加呢?

方法一

将helloServlet.war上传到tomcat/webapps目录下并改名为ROOT.war即可,在启动tomcat后,会自动将其解压,在webapps目录下会多了一个ROOT文件夹

方法二

第一步:在tomcat目录下新建web目录,然后将pd_hk.war解压后上传到该目录下

第二步:修改server.xml文件

      <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">
            <Context path="/" docBase="/home/appdev/pd_hk_8001/web/pd_hk" debug="0" />
......

: /home/appdev/pd_hk_8001/web 就是 上传web应用后的位置,pd_hk是项目名

第三步:启动,访问:http://localhost:8080/login.html

注意1:如果将 appBase="web",会出现将该项目启动二次的现象,如同注意2

注意2:如果没有解压,直接pd_hk.war放在webapps目录下,且配置文件为:

      <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true">
            <Context path="/" docBase="/home/appdev/pd_hk_8001/webapps/pd_hk.war" debug="0" />
......

也会出现将该项目启动二次的现象,会启动两个该项目:

 通过定时任务可以看到有两个对象在执行定时任务:

其实是两个项目(ROOT、pd_hk)同时在跑定时任务,并不是该项目启动二次,所有的项目都在webapps目录里面,root是其中的一个项目,http://localhost:8080/默认访问root项目,而如果要访问pd_hk项目需要如此访问http://localhost:8080/pd_hk/,二者都有定时任务的话,那么都会执行,所有才会在日志了看到打印了两个不同的对象。

 方法三(推荐)

第一步:在tomcat目录下新建web目录

直接pd_hk.war放在webapps目录下,且配置文件为:

注意:appBase="web"

      <Host name="localhost"  appBase="web" unpackWARs="true" autoDeploy="true">
            <Context path="/" docBase="/home/appdev/pd_hk_8001/webapps/pd_hk.war" debug="0" />
......

tomcat启动后会自动在tomcat/web下创建pd_hk.war解压包

而webapps目录下没有解压包

  

猜你喜欢

转载自blog.csdn.net/yiguang_820/article/details/120356478
今日推荐