我正在使用 Apache2 -> mod_jk -> Tomcat7
我正在使用以下 URL 调用 JSF 网络应用程序:http://server/foo
现在,我也喜欢用 URL 来调用它:http://server/bar
对 foo
的调用应始终更改为 bar
。
由于 Tomcat 要求并与 /foo
相关,因此任何 JSF request.getContextPath()
都会返回 /foo
。因此,后续页面调用会导致浏览器 URL 包含 /foo
而不是 bar
。
What do I need to change in order to keep tomcats foo-paths while the user sees bar-paths in the browser?
这是我目前的配置:
/etc/apache2/conf.d/test.conf
Alias /foo "/original/path"
RewriteEngine on
RewriteRule "/bar(.*)" "/foo$1" [PT]
<Directory "/original/path">
....
</Directory>
/.../tomcat7/conf/Catalina/localhost/test.xml
<Context path="/foo" ...></Context>
最佳答案
- 在 tomcat7/conf/Catalina/localhost 中需要一个额外的 foo.xml
...
别名/foo "/original/path" 重写引擎开启 RewriteRule "/bar(.*)""/foo$1"[PT] ....
关于jsf - 如何在 Apache 中为 Tomcat 创建替代 URL/别名(仅对用户可见),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34813372/