是否可以在Tomcat中为多个上下文路径提供一个appBase?
我有一个应用程序库,最近取代了第二个应用程序库。我的问题是许多用户仍然访问旧的上下文。我想从单个appBase提供现在常见的应用程序,但是可以通过任一上下文访问。我在低洼的水果上摇摆,并在'webapps'目录中使用了一个符号链接......将旧的上下文路径指向新的上下文路径;它有效,但感觉“很傻”。我不喜欢为两个上下文创建数据库连接池(我想最小化连接到数据库的资源)。
无论如何,如果有人知道“正确”的方式,我会非常感激。我正在使用Tomcat 6.0.16 - 没有apache前端(我认为URL重写会很好)。
答案 0 :(得分:2)
我不确定上面的答案是否会阻止你的webapp加载两次(因为你必须将它部署到新的和旧的上下文路径),但我可能会弄错。另一种选择是在旧的上下文中保留一个非常简单的webapp,除了在web.xml中声明一个将所有请求重写到新路径的自定义servlet过滤器(基本上模拟apache的重写规则行为)之外什么都不做。你必须亲自编写过滤器类,但这将是非常简单的。
答案 1 :(得分:1)
是,进入Tomcat Web应用程序管理器并向下滚动到“部署位于服务器上的目录或WAR文件”。对于“Context Path(可选):”放入新的上下文。对于“WAR或目录URL:”,将其放在与现有应用程序相同的路径中。