3

是否可以让一个 appBase 由 Tomcat 中的多个上下文路径提供服务?

我有一个应用程序库,最近替换了第二个应用程序库。我的问题是许多用户仍在访问旧上下文。我想从单个 appBase 提供现在常见的应用程序,但可以通过任一上下文访问。我在低洼的水果上荡秋千,并在“webapps”目录中使用了一个符号链接……将旧的上下文路径指向新的上下文路径;它有效,但感觉“俗气”。而且我不喜欢为这两个上下文创建数据库连接池(我想最小化连接到数据库的资源)。

无论如何,如果有人知道这样做的“正确”方法,我将不胜感激。我正在使用 Tomcat 6.0.16 - 没有 apache 前端(我想 URL 重写会很好)。

4

2 回答 2

2

我不确定上面的答案是否会阻止您的 webapp 加载两次(因为您必须将它部署到新的和旧的上下文路径),但我可能弄错了。另一种选择是在旧上下文中保留一个非常简单的 webapp,除了在 web.xml 中声明一个自定义 servlet 过滤器之外什么都不做,它将所有请求重写到新路径(基本上模拟 apache 的重写规则行为)。您必须自己编写过滤器类,但这很简单。

于 2008-09-22T00:24:47.640 回答
1

是的,进入 Tomcat Web 应用程序管理器并向下滚动到“部署目录或位于服务器上的 WAR 文件”。对于“上下文路径(可选):”放入新上下文。对于“WAR 或目录 URL:”,放入与现有应用程序相同的路径。

于 2008-09-22T00:12:48.497 回答