关于 tomcat的配置问题啊~~~~~~~~~~

nil2000 2008-01-03 12:29:41

1<Host name="www.xxx.com" appBase="webapps" unpackWARs="false" autoDeploy="false" xmlValidation="false" xmlNamespaceAware="false">
2 <Context path="" docBase="/usr/local/tomcat/webapps/object1/" debug="0" reloadable="true" crossContext="true">


1中的appBase="webapps" 我删除以后,启动tomcat发现也没有错误。但是我在1中设置路径/usr/local/tomcat/webapps/object2/ 同时设置path="/roottest"
然后用http://localhost:8080/roottest访问却访问不了总提示404我的路径都是没问题的啊
因为,我如果把这个设置,设置到二里面,的话就可以访问。我不知道在系统运行得时候是不是一般都把1中的appBase="webapps" 删除啊

不知道1中的appBase="webapps",是指tomcat当前目录下的webapps目录吗?可以在1中配置path吗?可以通过配置的path访问应用吗?
应该怎么做啊谢谢啊
...全文
525 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
nil2000 2008-01-03
  • 打赏
  • 举报
回复
没看明白
lihaifeng0412 2008-01-03
  • 打赏
  • 举报
回复
学习
老紫竹 2008-01-03
  • 打赏
  • 举报
回复
appBase 是默认的应用路径,他下面的每个子目录都是一个 context.
当然,其中的一个可以指定为 /, 也就是那个ROOT,
你不管它也可以

你把 tomcat/webapps 下面的所有子目录全部删除, tomcat照样可以启动
然后你把 context path="" docBase 指定到 其它目录
127.0.0.1 就可以用了,而且是你指定的目录内容。
zs_han 2008-01-03
  • 打赏
  • 举报
回复
帮顶
老紫竹 2008-01-03
  • 打赏
  • 举报
回复
怎么会是一个呢!
1 appBase 下面可以有好多的 docBase
你打开 tomcat/webapps 就看到了,好多目录的
2 docBase 只是其中一个context的目录,
所以是 tomcat/webapps/ROOT

3 那 /examples 呢
是 tomcat/webapps/examples 啦!
nil2000 2008-01-03
  • 打赏
  • 举报
回复
这个我明白可是我


一、appBase="path" docBase="path"
这两个写一样的时候 ,总是提示这个
java.lang.IllegalArgumentException: Document base /usr/local/tomcat/./host-manager does not exist or is not a readable
directory
host-manager这个目录已经被我删除啊!



二、appBase="path" ,docBase="."
如果我这样写 还是提示同样错误!

三、如果我删除appBase,docBase="path" 还是提示同样错误!



四、如果我appBase="webapps" docBase="path" 就不会报任何错误

可是我把全部的项目都放在了webapps目录下,所以如果这样设置导致,进入任何一个项目
,只要写正确目录结构都可以进入其他的项目,
不知道怎么解决啊!希望得到帮助啊55



老紫竹 2008-01-03
  • 打赏
  • 举报
回复
你把war文件复制到 appBase, 就会被自动部署的!
老紫竹 2008-01-03
  • 打赏
  • 举报
回复
<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>
这个才是真正的 / 的地址,那个 ROOT 就代表
\tomcat\webapps\ROOT

所以,那个 host 路经,只用于那些 war 方式发布的时候用的。
nil2000 2008-01-03
  • 打赏
  • 举报
回复
当然是/roottest

我主要想知道
appBase="..."
docBase="..."
的区别和关系
老紫竹 2008-01-03
  • 打赏
  • 举报
回复
1个Host 总得有/ 吧,这个就是在 <Host 里面设置
而你又想把它改成 /roottest

那么这个到底是 / 还是 /roottest 呢!

所以,如果你要设置/ 就在 <Host 设置
如果你要设置虚拟目录,就在 <Context 里面设置
waterborn 2008-01-03
  • 打赏
  • 举报
回复
<Host name="www.test2.com" appBase="/home/waterborn/hosts/test2/" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="." path="" reloadable="true" />
</Host>

可以通过appBase 配置来访问, 也可以配置docBase
changjiangzhibin 2008-01-03
  • 打赏
  • 举报
回复
我记得好像1中的设置会覆盖2中的设置

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧