tomcat中修改server.xml设置虚拟目录后,再删掉那部分内容,虚拟路径还是能访问的。

原因1:没有重启tomcat

原因2:没有删掉conf\Catalina\localhost目录下的对应文件。比如我在server.xml中,添加了如下代码<Context path=""  docBase="D:\Tomcat 5.0"/>将根目录设置成D盘下的Tomcat 5.0.这个文件夹,会自动在Catalina\localhost文件夹下生成一个名为ROOT.xml的文件,其中的内容就是我在server.xml中添加的那部分内容。如果这个文件没删掉的话,打开http://localhost:8080/这个网页,就一直显示的是那个虚拟目录。刚开始我以为是缓存的原因,就换了好几个浏览器,并且清除了缓存,但是没有用。后来查证,原来是那个文件在作怪。在tomcat4.0的版本中,直接在server.xml中修改,是没有问题的。但是5.0的版本,就会在Tomcat 5.0\conf\Catalina\localhost文件夹下产生备份文件,需要将其删除。

遇到 "Could not publish server configuration for Tomcat v9.0 Server at localhost" 这样的错误,通常表示在尝试部署或配置 Tomcat 服务器时,系统检测到存在冲突或重复的资源路径。在这个特定的情况下,错误提到了 "Multiple Contexts have a path of '/ssm0rhr3'",这可能意味着有两个或更多的Web应用上下文(Contexts)试图使用相同的资源路径 "/ssm0rhr3"。 Tomcat 的 Context 是一个虚拟主机的概念,每个 Context 对应一个应用程序,它们有自己的 URL 前缀。如果两个或更多的 Context 设置了相同的路径Tomcat 将无法正常区分和加载这些应用程序,从而导致部署失败。 解决这个问题的方法通常有以下几步: 1. **检查配置文件**:查看 `server.xml` 或 `conf/server.xml` 文件,确认每个 `<Context>` 标签的 `path` 属性是否设置为 `/ssm0rhr3`,如果是,确保只有一个 Context 使用这个路径。 2. **修改 Context 路径**:对于多余的 Context,改变其路径为其他唯一值,比如 `/ssm0rhr3/app1` 和 `/ssm0rhr3/app2`。 3. **清理部署**:删除已经部署的应用,重新部署,确保每个 Context 都对应一个单独的 WAR 文件或目录。 4. **重启 Tomcat**:有时候,即使配置文件看起来没有问题,也需要重启服务器以确保更改生效。 5. **检查其他因素**:如果以上都不是问题,可能是环境变量、文件权限或并发部署导致的冲突,需要进一步排查。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值