如果tomcat服务器在反向代理后面运行,如何确定请求方案,contextpath

时间:2011-12-16 11:58:18

标签: java reverse-proxy

我正在为Java中的Web应用程序构建一个插件,该插件在Tomcat上运行,并在apache反向代理服务器后面运行。

我能够得到以下内容:

Host Name : request.getLocalName()

Port: request.getLocalPort()

如何获取原始请求的以下内容,而不是代理请求:

请求方案:??

上下文路径:??

1 个答案:

答案 0 :(得分:0)

要获取用于保护Servlet的身份验证方案,您可以从类HttpServletRequest调用方法getAuthType()。这将返回与javadocs中指定的静态韵母匹配的值。

Field Summary:
  static String BASIC_AUTH 
    String identifier for Basic authentication. 
  static String CLIENT_CERT_AUTH 
    String identifier for Client Certificate authentication.
  static String DIGEST_AUTH 
    String identifier for Digest authentication. 
  static String FORM_AUTH 
    String identifier for Form authentication. 

要获取上下文路径,只需调用HttpServletRequest的getContextPath()

修改

要获取代理服务器后面的服务器的本地计算机名称,您可以获取localhost计算机名称:

java.net.InetAddress localMachine = java.net.InetAddress.getLocalHost();