我正在运行带有 Tomcat 6 的 Apache 2.2,并且在带有 RewriteRule 的 Apache 和 Tomcat 中进行了几层 URL 重写。我想传递 Apache 看到的原始 REQUEST_URI,以便我可以正确记录它以查找“找不到页面”错误等。
在 httpd.conf 我有一行:
SetEnv ORIG_URL %{REQUEST_URI}
在 mod_jk.conf 中,我有:
JkEnvVar ORIG_URL
我认为应该通过request.getAttribute("ORIG_URL")
Servlet 使价值可用。
但是,我所看到的只是"%{REQUEST_URI}"
,所以我假设 SetEnv 不解释%{...}
语法。在 Tomcat 中获取用户请求的 URL 的正确方法是什么?
利用:
使用类的
getRequestURI()
和getRequestURL()
(也许还有getQueryString()
)方法HttpServletRequest
。