Tomcat中<Context>标签的使用方式和注意事项


1、<Context>标签说明

说明:是用于配置 Tomcat 中的 Web 应用程序上下文的元素(例:我现在需要部署两个Web应用,部署一个前端 web应用需要访问"/“导航到主页面。后端 web应用需要访问”/admin"导航到后端页面,我们现在就可以在使用一个Tomcat的情况下通过Context这个标签去配置来实现上面的功能。)

下面来说明一下该标签中比较重要的几个属性

<Context docBase ="/opt/software/app" path ="/"  reloadable ="true"/>
  • docBase:指定 Web 应用程序的根目录或文档根目录的路径。在示例中,Web 应用程序的根目录被设置为/opt/software/app。
  • path:指定访问该 Web 应用程序的 URL 路径。在示例中,该 Web 应用程序可以通过根路径 / 访问。
  • reloadable:指定是否启用自动重新加载(热部署)功能。如果设置为 true,当检测到 Web 应用程序的文件更改时,Tomcat 将自动重新加载应用程序。在示例中,reloadable 被设置为 true,表示启用了自动重新加载功能。

2、Tomcat部署应用的3种方式

  • 2.1以文件或war包直接部署

将应用文件夹或war文件直接复制到tomcat的webapps目录下,这样tomcat启动的时候会将webapps目录下的文件夹或war文件的内容当成应用部署。这种方式最简单且无须书写任何配置文件

  • 2.2 编辑server.xml配置文件,添加Context标签

在tomcat的server.xml配置文件中的Host节点下增长Context子节点

...
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path= "/test" docBase= "D:\private\tomcat\test.war" />
...

其中path制定访问url路径, docBase项目真是路径。其中,path即context path;docBase指向应用所在的文件夹或war文件,能够是绝对路径,也能够是相对路径(相对该Context所在的Host的appBase属性值)

  • 2.3 在tomcat的conf/[Engine]/[Host]目录下新建xml文件,文件名为<应用名称>.xml

在这里插入图片描述
注意:如果以想要访问目录,需要在该目录下新建ROOT.xml,然后将下面内容复制进去。即可访问

<Context docBase="/opt/software/test/WH-Security1"  reloadable="true" />
  • 接下来我们访问控制台进行测试:

在这里插入图片描述

  • 下面我们在看一下日志的打印信息:使用该方式部署的应用支持热部署,只要修改了该文件就能被Tomcat监听到

在这里插入图片描述
接下来我们在做一个验证:我修改ROOT.xmlwh-security.xml,然后在看一下日志和控制台的变化。

  • 日志打印信息:确实发生了改变

在这里插入图片描述

  • 控制台访问:却是发生了改变
    在这里插入图片描述

上面的配置可以发现我并没有添加path属性,其实不管我们是否配置,它已经不生效了。下面简单做个验证,在wh-security.xml中添加该path属性并且该uri为app.

<Context docBase="/opt/software/test/WH-Security1" path="/app"  reloadable="true" />
  • 查看日志信息:绿框说的很详细,该路径属性已经被忽略

在这里插入图片描述

  • 访问控制台:很明显,当我们访问“/app”得到却不是我们想要的结果,说明通过这种方式部署,该路径属性会被忽略。

结论:这3种部署应用的方式更推荐第三种,其中第二中部署方式的局限性比较大,每次配置完成之后都需要重新启动一下Tomcat服务器才生效。第一种和第三种都支持热部署。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值