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.xml
为wh-security.xml
,然后在看一下日志和控制台的变化。
日志打印信息:确实发生了改变
控制台访问:却是发生了改变
上面的配置可以发现我并没有添加
path
属性,其实不管我们是否配置,它已经不生效了。下面简单做个验证,在wh-security.xml
中添加该path属性并且该uri为app.
<context docbase="/opt/software/test/wh-security1" path="/app" reloadable="true" />
查看日志信息:绿框说的很详细,该路径属性已经被忽略
访问控制台:很明显,当我们访问“/app”得到却不是我们想要的结果,说明通过这种方式部署,该路径属性会被忽略。
结论
:这3种部署应用的方式更推荐第三种,其中第二中部署方式的局限性比较大,每次配置完成之后都需要重新启动一下tomcat服务器才生效。第一种和第三种都支持热部署。
到此这篇关于浅谈tomcat中<context>标签的使用方式和注意事项的文章就介绍到这了,更多相关tomcat context标签内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论