如何获得客户的IP

问题描述 投票:0回答:1

我想获得客户的IP地址。我的想法是我要唯一地标识每台PC。我正在使用Laravel 5.6。

如果使用\request()->ip(),它将返回ISP地址。我已连接到局域网,因此从任何PC发出的请求都返回相同的IP地址。与其相反,我要标识局域网中连接的每台PC。

我已使用此代码。在较旧的浏览器中它可以正常工作,但在现代浏览器中不支持。

How to get client's IP address using JavaScript?

php laravel ip-address clientip
1个回答
0
投票
public function getUserIpAddr(){
       $ipaddress = '';
       if (isset($_SERVER['HTTP_CLIENT_IP']))
           $ipaddress = $_SERVER['HTTP_CLIENT_IP'];
       else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
           $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
       else if(isset($_SERVER['HTTP_X_FORWARDED']))
           $ipaddress = $_SERVER['HTTP_X_FORWARDED'];
       else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
           $ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
       else if(isset($_SERVER['HTTP_FORWARDED']))
           $ipaddress = $_SERVER['HTTP_FORWARDED'];
       else if(isset($_SERVER['REMOTE_ADDR']))
           $ipaddress = $_SERVER['REMOTE_ADDR'];
       else
           $ipaddress = 'UNKNOWN';    
       return $ipaddress;
    }
© www.soinside.com 2019 - 2024. All rights reserved.