IE浏览器通过ActiveX方式获取客户端IP地址
描述: 最近遇到一个需求,要进行日志记录,其中包含了IE浏览器客户端IP地址的记录。在尝试了从request中获取IP地址后,在没有出现代理IP的情况下,可以正常获取。即:局域网下,可以收集客户端IP成功。但一旦出现代理IP的情况,就获取不到我们正确的IP地址了。 分析: 方式一:从request中取IP。若客户端是直接IP进行访问,此时获取IP地址成功;一旦客户端的网络是通过代理IP进行访问的情况下,此时从request中会获取多个IP地址,尝试了几种方法均未能获取到正确的IP。或许有其他的方法,暂未发现。【优点:无须安装或设置IE浏览器的ActiveX控件,缺点:并不是一直适用】 方式二:ActiveX方式取IP。因为ActiveX控件是安装在IE浏览器,也就是客户端机器上的,此时获取的客户端机器上的IP地址是没有问题的。【优点:获取为真实IP,缺点:需要进行浏览器设置】 解决方式: 此时,还是采用了ActiveX控件的方式来获取客户端IP地址: 代码Demo如下: <html> <head> <title></title> </head> <body> <object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" style="display:none;visibility:hidden">