我有一个在 CentOS 上运行的 Tomcat 7。
给出的配置中,我的 webapp “foo” 放置在 webapps/foo.war 中。我可以使用以下方式毫无问题地访问它:http://主机名/foo。
现在我想使用第二个 URL 访问同一个 Web 应用程序 -”http://主机名/bar“。
在我的 Tomcat 前面设置一个 web 服务器不是一个选择,所以我需要像 Tomcat 的 mod_rewrite 这样的东西。
到目前为止,我已经尝试过设置另一个这样的上下文:
<Context path="/bar" docBase="foo"/>
起初它似乎有效,但第二次看时它表明这实际上不是一个“别名” - 它是来自我的 webapp 的第二个实例,这对我来说确实不是一个有效的选项。
那么...有人知道如何获取 Tomcat 的某种别名或 URL 重写吗?
答案1
答案2
在您的特殊情况下,如何在您的 webapps 目录中设置符号链接?
假设你的目录如下所示:
ls webapps/
foo foo.war
只需添加一个名为 bar 的符号链接至 foo:
ln -s foo bar
得到这个:
ls webapps/
foo bar foo.war
答案3
您可能能够找到(有一些存在)或编写一个小型 Java Web 应用程序,将代理从一个 URL 模式反转到另一个 URL 模式。请参阅https://github.com/ahabra/reverse-proxy。