【发布时间】:2015-10-02 20:59:40
【问题描述】:
我在两个不同的上下文中部署了两个 tomcat 应用程序:
someurl.com/context1/
someurl.com/context2/
我需要截取表单中的url:
someurl.com/clientname/context1/
并将它们重定向到 url:
someurl.com/context1/clientname
其中“客户名”是动态的
我尝试在我的 tomcats server.xml 文件的元素中使用重写阀,但它仍然只适用于包含上下文的 url。即:
someurl.com/context1/clientname/context1
被重写
someurl.com/context1/clientname
使用以下正则表达式:
RewriteCond %{REQUEST_URI} ^.*/context1/.*$
RewriteRule ^.*/context1/(.*)$ /context1/$1 [L]
有没有办法以不考虑上下文的方式全局重写 url?
【问题讨论】:
-
您的目标是避免在 Java 中在过滤器级别执行此操作吗?我猜你宁愿把它作为一个配置而不是一个类/jar文件对吗?
-
正确。我实际上找到了解决方案,所以稍后会发布答案。
-
非常感谢您的提问,您的组正则表达式(使用 $1)帮助我修改了 URL 的最后一部分
标签: regex tomcat url-rewriting rewrite tomcat-valve