回复于:后台获取WP访问的真实IP

首页 论坛 提一个问题 后台获取WP访问的真实IP 回复于:后台获取WP访问的真实IP


组织好语言,说清楚情况,你我都方便
#790 回复

wp叔叔
管理员

Thomas,

这其实是一个HTTP问题,代理访问,真实的client IP在特殊的HTTP头里, 你要配置apache写log的时候,记下这些头。

https://campus.barracuda.com/product/webapplicationfirewall/doc/4259905/logging-actual-client-ip-address-on-the-apache-server/

你可以可以搜 apache / nginx log real client IP。

在PHP也会这样用:https://www.virendrachandak.com/techtalk/getting-real-client-ip-address-in-php-2/

但其实这个方法并不可靠,因为不是所有中间代理服务器都发送这些头。不少代理服务器刻意隐藏客户源信息,所以没有任何HTTP头可获得真实IP。

这时候,你可以用插件如 https://wordpress.org/plugins/insert-headers-and-footers/ 在页面尾部强制插入一个img或者script标签,引用到一个到网站域名(非代理服务重写过的域名)的资源,如https://www.mydomain.com/iptracker,这可以是一个空白页面,这个请求就不会通过代理,而会直接访问你的网站,记录下的IP是真实IP。

如果客户通过底层协议改动的IP,如未批嗯,那就比较难,不是没有方法,但需要第三方服务来判断是否识别到的IP属于某未批嗯厂商IP,结果往往是不准确的。