需求:不论用户是直接访问,还是通过一串 CDN 之后的访问,希望取得正确的原始IP地址; 解决方法:借助nginx的$http_x_forwarded_for获取原始IP地址; 面临问题:模拟非原始IP访问,通过日志看出原始IP地址; 尝试方法:三个IP,甲乙丙,乙设置反向代理访问丙,那么甲访问乙后会访问丙; 求助问题:丙的access.log在甲访问乙后应该在htt_x_forwarded_for一栏看到甲的ip,但现在丙那栏为空?为什么?
附:1、丙日志格式log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
2、实际结果: 乙IP- - [20/Jan/2016:09:17:54 +0800] "GET /favicon.ico HTTP/1.0" 404 205 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" "-"
|