前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tomcat下的appBase和docBase[通俗易懂]

Tomcat下的appBase和docBase[通俗易懂]

作者头像
全栈程序员站长
发布2022-07-23 13:52:54
4K0
发布2022-07-23 13:52:54
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

<host appBase=”d:/aaa”> <Context docBase=”d:/aaa/bbb”> </Context> </host>

我们先看appBase,这个目录表示: 1 这个目录下面的子目录将自动被部署为应用。 2 这个目录下面的.war文件将被自动解压缩并部署为应用

而docBase只是指向了你某个应用的目录,这个可以和appBase没有任何关系。

总结: 如果你想自己指定路径,那么应该在docBase里面 如果你想简单,那么直接把他们复制到appBase下面就行了

如果你把他们弄重复了,也就是2个指向了一个目录,看上去也能运行,但你的应用下面的每个子目录,其实是被部署为单独的应用的。 比如你的应用为

myApp, 放在了 d:\project\myApp 里面有2个子目录 d:\project\myApp\images d:\project\myApp\js

你可以通过: 1 设置 appBase 指向 d:\project 来让系统自动部署 2 你可以手工指定docBase到 d:\project\myApp 3 如果你指定了 appBase到 d:\project\myApp 那么 d:\project\myApp\images这个将不再是普通的子目录,而是一个单独的虚拟目录,或者叫应用了。因为其被自动部署 d:\project\myApp\js 也一样的后果

<host>里的appBase,然后在<context>里的docBase,这 两个属性是有联系的,先说一下比较官方的解释:“<Host>元素中的 appBase属性指定了一个路径,该路径将作为嵌套在它里面的<Context> 元素的docBase属性中设置的相对路径的基准路径。”也就是说是docBase的基路径,如果你的项目路径在:“F://a/site1”,而你在 appBase里写:“F://a/”,在docBase里写:“site1”,这样是可以的 。如果你appBase=“”,也就是说空着不写,在docBase里写: “F://a/site1”,也是可以的,反过来,如果是在appBase里写: “F://a/site1”,也是可以的。记住这些是很重要的!

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/126453.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年4月7,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档