重定向不包括路径

时间:2015-04-01 13:00:26

标签: java jetty tuckey-urlrewrite-filter

<rule>
    <from>^/asd/(.*)/$</from>
    <to type="temporary-redirect">%{context-path}/?asd=$1</to>
</rule>

我的网站托管为myapp.com/testing,我的码头上下文为dev

所以myapp.com/testing/dev/

但是当我尝试myapp.com/testing/dev/asd/123/

而不是myapp.com/testing/dev/?asd=123

我被重定向到myapp.com/dev/?asd=123

我正在使用v 4.0 http://urlrewritefilter.googlecode.com/svn/trunk/src/doc/manual/4.0/index.html

1 个答案:

答案 0 :(得分:0)

根据您的要求,您有两件事情。

您的重写过滤器与Jetty前面的任何内容(将浏览器(http客户端)请求转换为myapp.com/testing/dev/到jetty的myapp.com/dev/的硬件或软件不一致.Petty不知道路径的额外/testing/部分,因此您的重写过滤器无法为其302重定向添加额外的/testing/部分。

要么你需要让Jetty前面的产品足够聪明才能重写Location响应头,或者你需要调整你的重写过滤器以包含前面产品的额外路径信息Jetty知道。