Apache ProxyPassReverse值

时间:2012-07-23 19:13:09

标签: apache java-ee jboss proxy

我们的IT正在尝试配置新的apache / jboss / apj设置。

当我浏览http://domain.com/jboss/test.jsp时 和System.out.println request.getRequestURL()

我得http://domain.com/test.jsp (没有jboss)

由于这个原因,我的应用程序遇到了很多404.

IT部门表示,由于代理,Jboss没有/ jboss / url部分的概念。他们是正确配置还是我需要更改我的代码。对我来说,如果我必须硬编码url路径,我的代码就不可移植。

编辑 -

他们告诉我的是:

<Location /jboss>
    ProxyPass balancer://cluster stickysession=JSESSIONID 
    ProxyPassReverse https://domain.com/jboss/
</Location>

本文支持我的问题 https://sosiouxme.wordpress.com/2010/08/18/fixing-apache-httpd-reverse-proxy-redirect-rewrites/

EDIT2 在我的旧服务器上,我的登录框架servlet使用了一些应用程序 response.sendRedirect(“login.jsp?message =您已成功注销。”);

要使用我必须重新编码的新代理工作 response.sendRedirect(“/ jboss / AppName / login.jsp?message =您已成功注销。”);

我使用后一种语法失去了可移植性和可重用性。

中的错误(在Apache中,而不是jboss) response.sendRedirect("login.jsp?message=You have successfully logged off.");
File does not exist: /WEB/wwwssl/AppNamelogin.jsp
请注意,我的appname和login.jsp之间没有“/”

中的错误(在Apache中,而不是jboss) response.sendRedirect("/login.jsp?message=You have successfully logged off.");
File does not exist: /WEB/wwwssl/login.jsp
请注意AppName缺失

1 个答案:

答案 0 :(得分:1)

请注意,article you mention使用mod_proxy_html (ProxyHTMLURLMap ProxyHTMLURLMap / /ajp/nocluster/),它会修复使用正确路径前缀的链接。这不是Apache Httpd提供的默认mod_proxy模块的一部分。

使用单行语法可以正确转发路径,而不是将这些指令放在<Location>块中:

ProxyPass /jboss balancer://cluster stickysession=JSESSIONID