博客
关于我
Nginx代理模式下 log-format 获取客户端真实IP
阅读量:791 次
发布时间:2023-02-15

本文共 928 字,大约阅读时间需要 3 分钟。

Nginx Web 服务器配置及客户端 IP 地址获取

环境描述

在本次实验中,我们使用以下三台主机进行配置测试:

  • A: Windows 客户端 IP 地址为 10.43.2.213
  • B: Nginx 代理服务器 IP 地址为 10.43.2.11
  • C: Nginx Web 服务器 IP 地址为 10.43.2.54

访问流程为:A → B → C


配置 Nginx Web 服务器

在配置文件中进行了如下修改:

server {    listen 80;    server_name localhost;    charset koi8-r;    access_log /var/log/nginx/log.host.access.log main;    location / {        root /usr/share/nginx/html;        index index.html index.htm;        set_real_ip_from 10.43.2.11;        real_ip_header X-Real-IP;    }}

修改说明

  • set_real_ip_from 10.43.2.11;

    指令用于指定从哪个 IP 地址获取客户端地址。

  • real_ip_header X-Real-IP;

    指令用于将获取到的客户端 IP 地址存储在变量 X-Real-IP 中。

  • log_format

    设置日志格式为 $http_x_forwarded_for_$remote_addr-$remote_user[$time_local],用于记录客户端地址、远程用户信息等。


  • 测试效果

    通过实际访问测试,可以看到以下效果:

  • 未修改前:访问日志仅记录代理服务器的 IP 地址,无法获取客户端真实 IP 地址。

  • 修改后:访问日志中成功记录客户端真实 IP 地址,表明 Nginx Web 服务器已正确获取客户端 IP 地址。


  • 总结

    通过上述配置方法,我们成功实现了 Nginx Web 服务器获取客户端真实 IP 地址的功能。这种方法在代理服务器和 Web 服务器之间尤其适用,能够确保日志记录的准确性和完整性。

    转载地址:http://nhcfk.baihongyu.com/

    你可能感兴趣的文章
    nfs mount 故障 mount.nfs: access denied by server while mounting 10.0.100.208:/backup_usb
    查看>>
    NFS Server及Client配置与挂载详解
    查看>>
    NFS 服务配置篇
    查看>>
    NFS共享文件系统搭建
    查看>>
    nfs复习
    查看>>
    NFS安装配置
    查看>>
    NFS服务器配置-服务启动与停止
    查看>>
    NFS的安装以及windows/linux挂载linux网络文件系统NFS
    查看>>
    NFS的常用挂载参数
    查看>>
    NFS网络文件系统
    查看>>
    NFS远程目录挂载
    查看>>
    nft文件传输_利用remoting实现文件传输-.NET教程,远程及网络应用
    查看>>
    NFV商用可行新华三vBRAS方案实践验证
    查看>>
    ng build --aot --prod生成文件报错
    查看>>
    ng 指令的自定义、使用
    查看>>
    ng6.1 新特性:滚回到之前的位置
    查看>>
    nghttp3使用指南
    查看>>
    【Flink】Flink 2023 Flink 自动化运维的大规模落地实践
    查看>>
    Nginx
    查看>>
    nginx + etcd 动态负载均衡实践(一)—— 组件介绍
    查看>>