雨云宝塔虚拟主机获取访客真实IP

雨云的虚拟主机在web服务器日志中获取到的IP是内网地址。
导致有时候网站收到攻击时无法查看真实IP
比如…


如何获取到真实的源站IP呢?
通过php输出HEADER头可以发现,其实真实IP是存在于HTTP_X_REAL_IP和HTTP_X_FORWARDED_FOR的(如下图)

那么接下来就好办了,完美只要修改日志格式,让其能显示这个头的值就好了
怎么修改呢?非常简单!再宝塔的nginx.conf配置中
加上下面一行

log_format main 'CDN_IP:$remote_addr - CLIENT_IP:$HTTP_X_FORWARDED_FOR - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';


你以为这样就可以了?不,我们还要再每个网站的配置文件中的access_log项上追加一个”main“
(你可以参考下图

最后,再次查看你的日志,你会发现,你的日志中已经带上了访客的IP

QQ截图20210221173953

在线求积分 :yum:

1 个赞