【问题标题】:Tomcat, Mod_rewrite, Mod_proxy: how do I keep the original URI path in a proxied request?Tomcat、Mod_rewrite、Mod_proxy:如何在代理请求中保留原始 URI 路径?
【发布时间】:2012-03-01 11:28:34
【问题描述】:

我正在使用以下配置来代理请求,并使用 mod_rewrite、mod_proxy 将 Apache 的 url 重写到 Tomcat。

# In apache virtual hosts

ProxyRequests Off
ProxyPreserveHost On

...
# In .htaccess file

#forward non-resource URL to jsp
RewriteRule ^([^\.]+)/?$ http://localhost:8080/mycontext/$1.jsp [P] 

我的问题:是否可以指示 Tomcat 保留原始 URI,以便我可以使用 request.getRequestURI() 读取它?这种配置是否可行,还是我必须求助于 mod_jk 或其他代理连接器?

当前保留主机名...而不是请求路径。我也在使用 Apache 2.2 和 Tomcat 6。

【问题讨论】:

    标签: apache jsp tomcat mod-rewrite mod-proxy


    【解决方案1】:

    一个不太麻烦的解决方案:

    RewriteRule ^([^\.]+)/?$ http://localhost:8080/mycontext/$1.jsp&_requri_=%{REQUEST_URI}
    

    然后从_requri_查询参数中读取请求uri。

    如果有更好的方法,请告诉我。

    【讨论】:

      猜你喜欢
      • 2011-09-03
      • 2011-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-17
      • 1970-01-01
      相关资源
      最近更新 更多