公司有一个应用,后端web用的是nginx,nginx 的所有请求都是通过前端的代理转发过来的,所有在日志格式里面 获取远程ip的变量用的是
$http_x_forwarded_for ,本来用的好好的,但是有一天日志分析脚本里面出现很多请求的 ip地址是空的,大概格式如下
- - - [20/May/2011:02:23:44 -0700] "GET /favi.ico HTTP/1.1" 404 56 "-" "Mozilla/5.0 (Windows NT 6.1; rv:2.0) Geo/20100101 Firefox/4.0" - __cust=000000004A5BB94DD441F61302282103 - - 0.002
- - - [20/May/2011:02:23:45 -0700] "GET /favi.ico HTTP/1.1" 404 56 "-" "Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gec/20100101 Firefox/4.0" - __cust=000000004A5BB94DD441F61302282103 - - 0.001
- - - [20/May/2011:02:23:45 -0700] "GET /favi.ico HTTP/1.1" 404 56 "-" "Mozilla/5.0 (Windows NT 6.1; rv:2.0) Gec/20100101 Firefox/4.0" - __cust&#
nginx 使用http_x_forwarded_for 无法获取到远程访问ip的解决方法
最新推荐文章于 2024-02-26 11:09:52 发布
当nginx服务器通过前端代理接收请求时,遇到使用$http_x_forwarded_for字段记录的IP为空的情况。文章介绍了问题原因及解决办法,即利用$remote_addr变量。还探讨了不同类型的代理服务器如何影响REMOTE_ADDR、HTTP_VIA和HTTP_X_FORWARDED_FOR的值,以及在各种情况下如何获取真实IP。
摘要由CSDN通过智能技术生成