服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Nginx - nginx实现IP地址透传的示例代码

nginx实现IP地址透传的示例代码

2024-08-21 20:38Alex-Lzy Nginx

默认后端服务器只能看到是前端nginx调度器访问的本机,本文主要介绍了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服务器

systemctl restart nginx
或者
nginx -s stop
nginx

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

vim /etc/httpd/conf/httpd.conf

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

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

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

LogFormat <strong>"</strong><strong>\"%{X-Real-IP}i\"</strong> %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调度器地址。

到此这篇关于nginx实现IP地址透传的示例代码的文章就介绍到这了,更多相关nginx IP地址透传内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

延伸 · 阅读

精彩推荐
  • Nginx在nginx中使用geoip做区域限制的方法

    在nginx中使用geoip做区域限制的方法

    今天小编就为大家分享一篇在nginx中使用geoip做区域限制的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 ...

    guoqianqian58124572020-01-15
  • Nginx解决Nginx 配置 proxy_pass 后 返回404问题

    解决Nginx 配置 proxy_pass 后 返回404问题

    这篇文章主要介绍了Nginx 配置 proxy_pass 后 返回404问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...

    自由早晚乱余生21152021-02-28
  • NginxLinux服务器下nginx的安全配置详解

    Linux服务器下nginx的安全配置详解

    本篇文章主要介绍了Linux服务器下nginx的安全配置详解,Nginx在很多高流量网站上得到了应用,有需要的朋友可了解一下。 ...

    chenpingzhao5462019-11-15
  • NginxNginx防止流量攻击的配置详解

    Nginx防止流量攻击的配置详解

    这篇文章主要给大家分享了Nginx防止流量攻击的配置方法,文中给出了详细的介绍和配置示例代码,对大家具有一定的参考学习价值,需要的朋友们下面来...

    5362019-11-26
  • Nginxnginx ingress限速那些事浅析

    nginx ingress限速那些事浅析

    这篇文章主要为大家介绍了nginx ingress限速的一些知识的浅析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    烂笔头7402023-04-14
  • Nginx详解Keepalived+Nginx实现高可用(HA)

    详解Keepalived+Nginx实现高可用(HA)

    这篇文章主要介绍了详解Keepalived+Nginx实现高可用(HA),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...

    xyang091720952019-12-24
  • Nginxkeepalived实现nginx高可用

    keepalived实现nginx高可用

    这篇文章主要为大家详细介绍了keepalived实现nginx高可用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    逍遥无谓8442022-02-20
  • NginxNginx的rewrite模块详解

    Nginx的rewrite模块详解

    这篇文章主要介绍了Nginx的rewrite模块详解,有感兴趣的同学可以研究下...

    PHP开发社区3872021-03-26