zoukankan      html  css  js  c++  java
  • NGINX转发代理情况下,获取客户单真实IP

    编译时加上http_realip_module 模块

    realip模块生效的前提是:直接连接nginx的ip是在set_real_ip_from中指定的。

    原机配置:

    set_real_ip_from  30.0.0.226;     #代理服务器的IP地址
    real_ip_header    X-Forwarded-For;
    real_ip_recursive on;
    

    set_real_ip_from:指定30.0.0.226是反代服务器(信任服务器),不是真实的用户IP

    real_ip_header:指定真正的用户IP是存在X-Forwarded-For请求头中

    当real_ip_recursive为off时,nginx会把real_ip_header指定的HTTP头中的最后一个IP当成真实IP

    当real_ip_recursive为on时,nginx会把real_ip_header指定的HTTP头中的最后一个不是信任服务器的IP当成真实IP

    在多级代理的情况下,real_ip_header指定的HTTP头中包含了多个IP,包括该NGINX前面的信任服务器

    代理服务器配置:

    location ~ / {
        index index.php index.html index.htm;
        proxy_pass  http://30.0.0.227:80;   #后端服务器IP
        proxy_redirect     off;
        proxy_set_header   Host             $host;
        proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    }
    
  • 相关阅读:
    第六周作业
    第四周作业(登录验证码)
    JSP第二次作业
    JSP第一次作业求1-100间的素数
    软件测试课堂作业
    安卓作业(购物商城)
    安卓作业
    Android 简易计算器
    jsp第七次作业
    JSP第六次作业
  • 原文地址:https://www.cnblogs.com/wshenjin/p/9135160.html
Copyright © 2011-2022 走看看