zoukankan      html  css  js  c++  java
  • nginx ---IP地址透传

    默认后端服务器只能看到是前端nginx调度器访问的本机

    针对前端只有单个代理服务器的解决办法

    一、修改调度机nginx的虚拟主机的配置文件

      设定转发往后端主机的请求报文的请求首部的值;

    vim /etc/nginx/conf.d/test.conf 
    server {
            listen 80;
            server_name www.test.net;
            root /data/site1/;
            location ~.*.(jpg|png|jpeg)$ {
                    proxy_pass http://192.168.1.4;
    
            }
            location /api {
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_pass http://192.168.1.6;
            }
            access_log /var/log/nginx/test_net.log ;
    }

      nginx 对别人发给它的文件没办法修改,但对他发送给别人的文件可以修改,这里在头部添加一个X-Real-IP

      默认日志里记录的是访问本机的客户端IP地址,X-Real-IP这个字段可以自定义

    二、重启nginx服务器

    1 systemctl restart nginx
    2 或者
    3 nginx -s stop
    4 nginx

    三、修改后端主机的主配置文件

    vim /etc/httpd/conf/httpd.conf 

    默认记录的开头是客户端IP地址:(英文输入法下,输入/LogFormat  直接定位到这行)

      LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined

    将原来的注释掉,修改为:

    LogFormat ""%{X-Real-IP}i" %h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined

    四、测试访问

    curl www.test.net/api -L

    五、查看后端日志

    "192.168.1.4" 192.168.1.5 - - [08/Jun/2021:11:47:23 +0800] "GET /api HTTP/1.0" 301 231 "-" "curl/7.29.0"
    "192.168.1.4" 192.168.1.5 - - [08/Jun/2021:11:47:23 +0800] "GET /api/ HTTP/1.0" 200 31 "-" "curl/7.29.0"

    192.168.1.4 是测试服务器地址,192.168.1.5是nginx调度器地址。

    ------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------- 博客均为个人笔记,无所追求,仅供参考~~~ QQ--2382990774
  • 相关阅读:
    Javascript高级程序设计笔记(很重要尤其是对象的设计模式与继承)
    javascript面向对象技术基础总结
    cURL范例(包括错误输出和详情输出)
    javascript知识点总结
    php memcache知识点总结
    php mcrypt加密实例
    spl处理文件(文件详细信息、文件遍历、查询指定行、写入CSV文件)
    table-layout 属性
    backface-visibility 属性 :隐藏被旋转的 div 元素的背面
    HTML 5 全局 contenteditable 属性
  • 原文地址:https://www.cnblogs.com/alexlv/p/14862221.html
Copyright © 2011-2022 走看看