TEL:400-8793-956
当前位置:程序、服务器

如何使用PHP App跟踪客户端IP地址?

提问者: 近期获赞: 浏览人数: 发布时间:2021-02-03 14:35:16

 问:我正在使用以下代码跟踪客户端地址,但是此代码在我们的本地服务器上运行良好,但是一旦我在实时服务器上托管,他们就会返回托管服务器IP而不是用户IP地址,如果有人知道他的解决方案,请回复我

 
 
 
  $ ip ='';
    $ _SERVER ['REMOTE_ADDR'] = $ _SERVER ['HTTP_X_REAL_IP'];
    if(getenv('HTTP_CLIENT_IP'))
        $ ip = getenv('HTTP_CLIENT_IP');
    否则if(getenv('HTTP_X_FORWARDED_FOR'))
        $ ip = getenv('HTTP_X_FORWARDED_FOR');
    否则if(getenv('HTTP_X_FORWARDED'))
        $ ip = getenv('HTTP_X_FORWARDED');
    否则if(getenv('HTTP_FORWARDED_FOR'))
        $ ip = getenv('HTTP_FORWARDED_FOR');
    否则if(getenv('HTTP_FORWARDED'))
       $ ip = getenv('HTTP_FORWARDED');
    否则if(getenv('REMOTE_ADDR'))
        $ ip = getenv('REMOTE_ADDR');
    否则
        $ ip ='未知';
    返回$ ip;
 
 
答:<?php
//
如果((empty($ _ SERVER ['HTTP_CLIENT_IP']))
{{
ip_address = $ _SERVER ['HTTP_CLIENT_IP'];
}
// ip是否来自代理
elseif(!empty($ _ SERVER ['HTTP_X_FORWARDED_FOR']))
{
$ ip_address = $ _SERVER ['HTTP_X_FORWARDED_FOR'];
}
// ip是否来自远程地址,
否则{$ ip_address = $ _SERVER ['REMOTE_ADDR'];
}
回声$ IP_ADDRESS;
?>
 
上一篇: 在Android Studio中调试funfacts应用程序时遇到此错误?
下一篇: 如何以PHP Ajax形式发送多个数据