`
dch1287
  • 浏览: 122705 次
  • 性别: Icon_minigender_1
  • 来自: 魔都
社区版块
存档分类
最新评论

java、servlet、jsp获取真实IP地址(代理、F5、WebLogic、Apache)

    博客分类:
  • Java
阅读更多
<%!
public static void guessRealIp(HttpServletRequest req, HttpServletResponse resp) {

    try {
	    resp.getWriter().write("X-Forwarded-For: " + req.getHeader("X-Forwarded-For") + "<br>");
	    resp.getWriter().write("Proxy-Client-IP: " + req.getHeader("Proxy-Client-IP") + "<br>");
	    resp.getWriter().write("WL-Proxy-Client-IP: " + req.getHeader("WL-Proxy-Client-IP") + "<br>");
	    resp.getWriter().write("getRemoteAddr: " + req.getRemoteAddr() + "<br>");
    } catch (Exception e) {
        e.printStackTrace(resp.getWriter());
    }
}

public static String getRealIp(HttpServletRequest req, HttpServletResponse resp) {

    String ip = req.getHeader("X-Forwarded-For");

    if (ip != null) {
        if (ip.indexOf(',') == -1) {
            return ip;
        }
        return ip.split(",")[0];
    }

    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
        ip = req.getHeader("Proxy-Client-IP");
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
        ip = req.getHeader("WL-Proxy-Client-IP");
    }
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
        ip = req.getRemoteAddr();
    }

    return ip;
}
%><% guessRealIp(request, response) %>
分享到:
评论

相关推荐

    WebLogic平台下部署Servlet与Jsp

    ### WebLogic平台下部署Servlet与Jsp #### 实验目的 本实验旨在让学习者掌握在WebLogic平台上部署Servlet与Jsp的方法和技术要点。通过实际操作,加深对Servlet与Jsp的理解,熟悉WebLogic服务器的基本配置及应用...

    apache反向代理weblogic

    - 反向代理可以隐藏WebLogic服务器的IP地址和端口,增加安全性,防止直接攻击。 - Apache可以配置为只接受HTTPS连接,提供额外的加密层。 7. **性能优化**: - 调整Apache和WebLogic的配置,例如调整连接超时、...

    F5 weblogic集群负载分发配置

    - **解决方案目标**:通过结合F5 BIG-IP控制器和WebLogic服务器,创建一个卓越的解决方案,以提供一流的可扩展性和性能,特别是在部署于WebLogic电子商务平台上的服务和应用程序方面。 #### 解决方案概览 - **...

    利用weblogic设置代理转发功能注意事项

    1. 在不同机器上创建集群时,对于与管理服务器不同机器的托管服务器配置中,需要填写所属管理服务器的名字和 IP 地址。 2. 各机器系统最好相同,环境配置一致,否则通过转发可能出现显示不正常问题。 3. ...

    Apache&weblogic;安装及配置反向代理转发

    Apache 和 Weblogic 安装及配置反向代理转发 在本文中,我们将详细介绍如何安装和配置 Apache 和 Weblogic,以实现反向代理转发。该配置可以将 Weblogic 服务器的内容转发到 Apache 服务器上,从而提高网站的性能和...

    Apache与Weblogic整合说明

    配置 Apache 时,需设置 `ServerName`,指定 IP 地址和端口,并定义 `user` 和 `group` 以匹配 Weblogic 的运行用户。 3. **拷贝 Weblogic 插件**: 将 Weblogic 提供的 mod_wl_20.so 插件复制到 Apache 的 ...

    linux下apache与weblogic的整合

    在IT行业中,Linux操作系统常被用作服务器平台,Apache HTTP Server是广泛应用的开源Web服务器,而WebLogic则是Oracle公司的一款企业级Java应用服务器。当需要处理高并发访问或分布式的应用部署时,将Apache与...

    JSP开发技术\第15章 WebLogic server 下的Jsp开发

    在本章中,我们将深入探讨如何在WebLogic Server环境下进行JSP(JavaServer Pages)的开发。JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,从而实现服务器端的数据处理和逻辑控制。 首先,让我们...

    Apache-WebLogic plub-in插件的安装

    Apache-WebLogic Plugin是将Apache HTTP Server与Oracle的WebLogic Server集成的关键组件,它使得Apache能够代理WebLogic Server处理动态内容,从而优化大型商务网站的性能和安全性。Apache的稳定性与WebLogic的强大...

    weblogic apache负载均衡

    weblogic apache负载均衡

    apache2.4 最新版代理weblogic的插件so,亲测可用

    在某些情况下,为了优化性能、负载均衡或者安全考虑,我们可能需要在Apache前端设置一个代理服务器来转发请求到后端的WebLogic Server。`mod_wl`模块是Apache的一个插件,它使得Apache能够与WebLogic Server通信,...

    Weblogic加Apache的负载均衡以及群集配置

    Weblogic与Apache结合进行负载均衡和群集配置是一种常见的企业级解决方案,用于提高Web应用程序的可用性和性能。这种配置方式通常适用于大型系统,通过分散负载到多个服务器,防止单点故障,确保服务的高可用性。 1...

    Weblogic10+Apache2.2.4整合过程

    3. 配置Apache的`httpd.conf`文件,添加对Weblogic的代理支持,如使用`mod_proxy`模块: ``` LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so *:80&gt; ...

    java获取ip地址

    ### Java 获取 IP 地址详解 在开发 Web 应用程序时,经常需要获取客户端的 IP 地址。这在很多场景下都是必要的,比如统计访问来源、进行地理位置定位、安全控制等。Java 提供了多种方法来实现这一功能,其中最常用...

    Apache+weblogic基础知识

    3. **权限控制**:Apache可以通过设置不同的访问控制指令,如Deny、Allow、Order等,实现对不同IP地址或用户组的访问权限管理。 4. **日志管理**:Apache的日志文件通常分为访问日志和错误日志,可以自定义日志格式...

Global site tag (gtag.js) - Google Analytics