1.若将Nginx服务器作为web服务器,位于负载均衡、Nginx反向代理之后,就不能获取客户端的真是ip地址。原因是经过反向代理后,由于在客户端和问服务器之间增加了中间层,因此web服务器无法直接拿到客户端的ip,通过$remote_addr变量的将是反向代理的ip地址。但是,反向代理服务器在转发请求的HTTP头信息中,可以增加X-Forwarded-For信息,用以记录原有的客户端ip地址的原来客户端请求的服务器地址。
log_format mylogformat '$http_x_forwarded_for - $remote_user [$time_local] '
' “$request” $status $body_bytes_sent '
' “$http_referer” "$http_user_agent" ';