`
langzhiwang888
  • 浏览: 185799 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Apache后端获取用户真实IP地址-nginx前端

 
阅读更多

Apache后端获取用户真实IP地址-nginx前端

mod_rpaf 是一个 Apache的模块,利用它可以给 Apache 的后端应用提供客户端真实的IP地址
在nginx作为前端,apache作为后端的情况下,apache只能获取到nginx前端的ip地址,而无法获取到用户的真实ip地址,在这种情况下,如果php需要对用户的ip做限制将无法实现。针对这种环境,apache开发了相应的模块mod_rpaf,能够获取到用户的真实ip地址。

如下图:
nginx代理下-apache获取用户真实ip地址
左边只能获取到nginx代理的IP地址,右边Apache才能获取到用户的真实ip地址
使用方法:
[codesyntax lang="java" lines="no"]
# if DSO load module first:
LoadModule rpaf_module libexec/apache2/mod_rpaf-2.0.so

RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 10.0.0.1
RPAFheader X-Forwarded-For
[/codesyntax]

具体安装配置请往下看
下载安装模块
[codesyntax lang="java" lines="no"]
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
tar -xzvf mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6/
/usr/local/apache2.2.15/bin/apxs  -i -c -n mod_rpaf-2.0.slo mod_rpaf-2.0.c
[/codesyntax]

添加apache配置
[codesyntax lang="java" lines="no"]
vi  /usr/local/apache2.2.15/conf/httpd.conf
# 在最后一行复制如下内容
LoadModule rpaf_module        modules/mod_rpaf-2.0.so
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 192.168.50.10 # 代理服务器的ip地址(记得做相应修改)
RPAFheader X-Forwarded-For
备注:RPAFproxy_ips后面添加代理服务器的ip地址,有几个填几个
[/codesyntax]

查看apache是否有rapf模块
[codesyntax lang="java" lines="no"]
# /usr/local/apache2.2.15/bin/apachectl -M | grep rpaf
rpaf_module (shared)
[/codesyntax]

最后重启Apache即可
[codesyntax lang="java" lines="no"]
# /usr/local/apache2.2.15/bin/apachectl -t
# /usr/local/apache2.2.15/bin/apachectl restart
[/codesyntax]


分享到:
评论

相关推荐

    配置Nginx前端Apache后端服务器

    ### 配置Nginx前端Apache后端服务器详解 在现代Web架构中,为了提高网站的性能、安全性以及实现负载均衡,Nginx与Apache的组合应用变得日益流行。Nginx以其高效的静态文件处理能力和良好的并发性能,常被用作前端...

    LNAMP架构中后端Apache获取用户真实IP地址的2种方法

    ### LNAMP架构中后端Apache获取用户真实IP地址的2种方法 在现代Web服务器部署环境中,LNAMP(Linux, Nginx, Apache, MySQL, PHP)架构是一种常见的选择,尤其是在需要高性能和高稳定性的场景下。然而,在这种架构中...

    NGINX-NGINX.rar

    - **反向代理**:NGINX可以作为前端服务器,将请求分发到后端多个服务器,提高系统负载均衡。 - **静态文件处理**:NGINX对静态文件的处理效率极高,是处理图片、CSS、JavaScript等资源的理想选择。 - **负载均衡**...

    window下配置前端nginx后端多apache(django_wsgi)

    在Windows环境下,配置前端Nginx与后端多Apache服务器(使用Django WSGI)是一项常见的任务,特别是在部署大型Web应用时。这样的架构能够充分利用Nginx的静态资源处理能力,以及Apache对动态内容的高效处理。以下将...

    LVS-DR+Nginx+Apache集群搭建

    在Real Server上,需要配置Nginx或Apache作为前端代理,将接收到的请求转发给后端的应用实例。对于Nginx,可以在配置文件中定义upstream块来管理后端服务器列表,通过proxy_pass指令将请求转发。Apache可以使用mod_...

    LVS+keeplived+nginx+apache

    在PHP集群中,Nginx可以作为前端的负载均衡器,将静态内容请求直接返回给用户,而将PHP动态请求转发到后端的Apache服务器。 Apache是应用最广泛的Web服务器之一,它提供了强大的模块化功能和灵活性。Apache默认使用...

    nginx-1.15.8.tar

    6. 验证:通过访问服务器的IP地址或域名,确认Nginx是否正常工作。 Nginx支持多种特性,如: - 反向代理:作为服务器前端,接收客户端请求并将它们转发给内部服务器集群。 - 负载均衡:根据策略分配客户端请求到多...

    实战Nginx.取代Apache的高性能Web服务器.2010

    - **用户手动选择方式**:用户根据提供的域名或IP地址列表手动选择服务器。 - **DNS轮询方式**:通过DNS解析返回多个IP地址,客户端按顺序访问。 - **四/七层负载均衡设备**:专用硬件设备或软件解决方案,可以...

    Linux+Apache+Nginx+MySQL+PHP

    4. **RPAF模块**:用于获取客户端真实IP地址的模块,这对于实现访问控制、统计等功能非常有用。 #### 四、安装与配置流程 1. **系统初始化** - 重新安装CentOS系统,并移除不必要的程序,例如`yum -y remove ...

    nginx+haproxy.docx

    - **IP Hash**:通过计算客户端IP地址的哈希值来决定请求的转发目标,确保来自同一客户端的请求始终发送到同一台后端服务器,解决了Session会话问题。 - **Fair**:一种第三方模块,基于后端服务器的响应时间进行...

    Nginx+KeepAlived+Tomcat负载架构

    - **Nginx**:作为前端负载均衡器。 - **KeepAlived**:用于监测Nginx的状态,并实现主备切换。 - **Tomcat**:作为后端应用服务器,通常部署多个实例以实现负载均衡。 ##### 2. 实现步骤 ###### 2.1 安装依赖...

    nginx集群用tomcat-redis-session-manager和commons-pool2-2.4.2和jedis-2.7.2

    集群部署时,`nginx`通常设置在前端,根据负载均衡策略将请求分发到后端的多个Tomcat实例。通过这种方式,不仅可以分散流量,还能在单个节点故障时保持服务的连续性。配置Nginx的负载均衡规则,如轮询、最少连接数或...

    Nginx端口映射配置方法

    在这个配置中,Nginx不仅将根URL `/` 的请求转发到8083端口(假设这是前端应用的地址),还将所有以`/rest`开头的请求转发到9803端口(假设这是后端API的服务地址)。`proxy_set_header`指令用于传递客户端的原始...

    限制访问IP地址程序(数据库版)

    标题中的“限制访问IP地址程序(数据库版)”指的是一个基于数据库技术实现的系统,用于控制对特定IP地址的网络访问权限。这样的系统通常应用于网络安全、网站管理或内部网络的访问控制,以保护服务器资源,防止恶意...

    决战Nginx系统卷:高性能Web服务器详解与运维 - 第1章

    - **基于名称和基于IP的虚拟服务器**:支持不同域名或IP地址映射到不同的服务器配置。 - **支持Keep-alive和管道连接**:保持连接活跃,减少握手次数。 - **灵活的配置**:允许动态更改配置而不中断服务。 - **重新...

    nginx-1.5.3.tar.gz 服务器

    - `http_access_module`:控制访问权限,如允许或禁止IP地址。 - `http_secure_link_module`:保护静态文件不被非法下载。 **总结** Nginx凭借其高效、稳定和易扩展的特性,在互联网行业中广泛应用,不仅作为Web...

    Nginx和Tomcat集群环境部署

    - **IP哈希**:根据客户端IP地址进行哈希计算,使得来自同一个客户端的请求被定向到同一台服务器。 #### 十一、总结 通过上述步骤,我们成功地在Windows环境下部署了一个由Nginx和Tomcat组成的简单集群。这种方式...

    解析nginx负载均衡

    - IP Hash算法的核心在于将客户端IP地址与后端服务器的数量相结合,通过简单的哈希运算确定请求应转发至的服务器。 - 为了确保均衡性,当经过一定次数的哈希仍然找不到可用服务器时,会退化为普通的轮询模式。 - ...

    Nginx1.15.3+Tomcat9.0.11前后端分离

    3. **反向代理**:Nginx接收来自客户端的请求,然后转发给Tomcat处理动态内容,隐藏了后端服务的真实地址,增强了安全性。 4. **缓存**:Nginx还可以缓存部分动态内容的响应,减少对后端服务器的请求次数,提高性能...

Global site tag (gtag.js) - Google Analytics