网络日志是一个通常不被重视的东西。今天写一下网络日志的内容。在部署网站的时候,看到访问日志中记录的ip地址不正确。在解决如何获取客户端真实IP地址的问题时,想到了网络日志合规性的内容,一起记录下来。第一个问题:前端使用Nginx反向代理,在简单的Nginx反向代理架构中,后端Aapche如何获取真实ip,客户端访问URL,直接访问前端代理服务器。代理被转发到后端服务器。这样代理服务器获取客户端的ip地址,后端服务器获取代理服务器的ip地址,导致后端服务器记录的日志内容不准确。查看后端Apache服务器的访问日志,每行网络请求对应的ip地址都是一样的,都是前端nginx反向代理服务器的ip地址。nginx和apache都是可配置的。通过修改nginx和apache的配置,可以将客户端的真实ip地址传给后端的apache服务器。直接贴两个配置文件如下:#nginx站点配置文件server{listen80;server_nameluoanman.comwww.luoanman.com;rewrite^(.*)$https://$host$1permanent;}server{listen443ssl;server_nameluoanman.comwww。luoanman.com;ssl_certificate/var/www/www-luoanman-com/luoanman/www.luoanman.com.pem;ssl_certificate_key/var/www/www-luoanman-com/cert/www.luoanman.com.key;ssl_session_timeout5m;ssl_ciphersECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADHssl_protocolsTLSv1TLSv1.1TLSv1.2;ssl_prefer_server_cipherson;位置/{proxy_set_headerHost$Xhttp_host-forward_forward_add_forward;代理$proxy_set_headerX-Real-Ip$remote_addr;proxy_set_headerX-NginX-Proxytrue;proxy_set_headerX-Forwarded-Proto$scheme;proxy_passhttp://localhost:8080;proxy_redirectoff;}}apahce启用remoteip模块,修改两个配置。#启用remoteip_moduleLoadModuleremoteip_modulemodules/mod_remoteip.so#修改httpd.conf
