PHP 作为 JavaScript:获取用户 IP
PHP as JavaScript: get users IP
我使用这个简单的脚本:
<script type="text/javascript">
var _mytrack = _mytrack || [];
_mytrack.push(['_setType', 'SOMETYPE']);
_mytrack.push(['_setEmail', 'john@johndoe.com']);
(function() {
var mytrack = document.createElement('script');
_mytrack.type = 'text/javascript';
_mytrack.async = true;
mytrack.src = ('https:' == document.location.protocol ? 'https://www' : 'http://www') + '.mytrack.net/tracker.tell.php?i='+_mytrack;
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(mytrack, s);
})();
</script>
我的PHP脚本(tracker.tell.php)看起来像这样:
header("content-type: application/javascript");
echo "alert('".$_SERVER['REMOTE_ADDR']."');";
现在这个问题与$_SERVER['REMOTE_ADDR']
有关,因为这给出了(在JS警报中)服务器的IP,而不是客户端的IP。
$_SERVER['REMOTE_ADDR'] 确实为您提供了远程用户的 IP 地址。但是,如果您使用的是代理或负载均衡器,则应使用 $_SERVER['HTTP_X_FORWARDED_FOR']
如果用户可以直接或通过代理访问您的服务器,则只需使用 if 语句
$remote_ip = (isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']);
然后将变量传递给 JS。
相关文章:
- 从远程脚本获取用户IP
- 跟踪用户点击Adsense广告的IP地址
- 如何使用javascript确定登录用户的浏览器版本和IP地址
- 当用户在提示框中输入IP地址时,如何将IP地址存储到变量
- 有没有一种可靠的方法来获取用户的IP,尽管他们位于代理或类似机构后面
- 阅读带有用户IP地址的网页(以php为单位)
- PHP 作为 JavaScript:获取用户 IP
- 浏览器Javascript - 任何了解用户当前IP的方法
- 用户的计算机名称以及 IP 地址
- 如何使用 IP 地址 + 地理位置获取用户位置 Asp.Net.
- 用户 IP 和用户代理
- 如何将网页访问限制为每个ip 1个用户
- 是否可以记录用户'的IP地址
- 通过IP地址在我的网站上的用户面前打开对话框
- 从用户ip中插入数据后,阻塞用户一段时间
- jQuery显示/获取用户IP地址
- 如何获取客户端/用户ip地址
- 获取匿名代理背后的用户ip
- PHP检索用户ip,真的很可靠
- 获取用户IP, user_agent,通过websocket引用