在Linux上将一个webapp“别名”添加到Tomcat 7上

我有一个在CentOS上运行的Tomcat 7。

鉴于是我有我的webapp“foo”放置在webapps / foo.war的configuration。 我可以访问它没有任何问题使用http://host.name/foo 。

现在我想使用第二个URL – “ http://host.name/bar ”来访问相同的webapp。

在我的Tomcat前设置一个web服务器不是一个选项,所以我需要像Tomcat的mod_rewrite。

我到目前为止所尝试的是设置另一个上下文:

<Context path="/bar" docBase="foo"/> 

起初它似乎工作,但在第二个看,这表明,这实际上不是一个“别名” – 这是从我的Web应用程序的第二个实例,这对我来说真的不是一个有效的选项。

那么…有没有人知道如何为Tomcat获取某种别名或URL重写?

对于名为URL Rewrite的 servlet容器,类似于mod_rewrite 。 从SO采取。

您可能能够find(less数存在的)或编写一个小型的Java Web应用程序,将代理从一个URL模式转换为另一个。 请参阅https://github.com/ahabra/reverse-proxy

在你的特殊情况下,如何在你的webapps目录中设置符号链接?

Asume你的目录看起来像这样:

 ls webapps/ foo foo.war 

只需使用名称栏添加一个符号链接到foo:

 ln -s foo bar 

得到这个:

 ls webapps/ foo bar foo.war