让nginx反向代理能够记录来自客户端的真实IP地址
2015-04-29 08:31
218 查看
上一节,我们说到了让Nginx能够正确识别用户到底访问的是哪个虚拟主机的域名,本章,我们讨论一下,如何让Nginx能够记录来自客户端的真实IP地址。
1、首先,我们看一下httpd的访问日志,看看客户端的IP地址是哪一个?
192.168.1.6 - - [29/Apr/2015:07:51:07 +0800] "GET / HTTP/1.0" 200 13
192.168.1.6 - - [29/Apr/2015:07:51:07 +0800] "GET / HTTP/1.0" 200 13
192.168.1.6 - - [29/Apr/2015:07:51:08 +0800] "GET / HTTP/1.0" 200 13 2、很容易,我们看到这个客户端的IP地址,实际上反向代理Nginx服务器的IP地址,这给以后做apache的日志分析的时候,代理很大的问题,因此,要解决这个问题,必须在Nginx的配置文件中,增加如下的指令。 proxy_set_header X-Forwarded-For $remote_addr
3、默认httpd的日志选项不能接收来自客户端的真实IP地址,只接收nginx反向代理传过来的IP地址,需要开启接收功能
4、按照下面的格式调整,httpd的日志记录格式
LogFormat "\"%{X-Forwarded-For}i\" %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
5、调整httpd的虚拟主机的日志格式
CustomLog logs/bbs.g.cn-access_log combined
6、重启相关服务,使生效。
1、首先,我们看一下httpd的访问日志,看看客户端的IP地址是哪一个?
192.168.1.6 - - [29/Apr/2015:07:51:07 +0800] "GET / HTTP/1.0" 200 13
192.168.1.6 - - [29/Apr/2015:07:51:07 +0800] "GET / HTTP/1.0" 200 13
192.168.1.6 - - [29/Apr/2015:07:51:08 +0800] "GET / HTTP/1.0" 200 13 2、很容易,我们看到这个客户端的IP地址,实际上反向代理Nginx服务器的IP地址,这给以后做apache的日志分析的时候,代理很大的问题,因此,要解决这个问题,必须在Nginx的配置文件中,增加如下的指令。 proxy_set_header X-Forwarded-For $remote_addr
3、默认httpd的日志选项不能接收来自客户端的真实IP地址,只接收nginx反向代理传过来的IP地址,需要开启接收功能
4、按照下面的格式调整,httpd的日志记录格式
LogFormat "\"%{X-Forwarded-For}i\" %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
5、调整httpd的虚拟主机的日志格式
CustomLog logs/bbs.g.cn-access_log combined
6、重启相关服务,使生效。
相关文章推荐
- 阿里云X-Forwarded-For 发现tomcat记录的日志所有来自于SLB转发的IP地址,不能获取到请求的真实IP。
- nginx反向代理、让代理节点记录客户端真实IP
- 阿里云X-Forwarded-For 发现tomcat记录的日志全部来自于SLB转发的IP地址,不能获取到请求的真实IP。 - Draco - 博客频道 - CSDN.NET
- 阿里云X-Forwarded-For 发现tomcat记录的日志全部来自于SLB转发的IP地址,不能获取到请求的真实IP。
- apache 日志中记录代理IP以及真实客户端IP
- Java获取请求客户端的真实IP地址
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- nginx代理proxy如何获取客户端的真实IP地址
- --with-http_realip_module选项(后台Nginx服务器记录原始客户端的IP地址 )
- 关于nginx反向代理后获取不到客户端的真实ip地址问题
- 多级反向代理下,Java获取请求客户端的真实IP地址多中方法整合
- Java获取请求客户端的真实IP地址
- 通过nginx反向代理,Tomcat获取真实的客户端IP而非服务器IP
- Java获取客户端真实IP地址的两种方法
- JAVA发送邮件和获取客户端真实ip地址
- 多级反向代理[Squid]下获取客户端真实IP地址
- 获取客户端的真实Ip地址
- 获取客户端真实的ip地址
- apache关于记录真实客户端ip和不记录健康检查日志