Php $\u服务器[';远程地址]为每个用户返回相同的ip
我正在尝试获取访问者的ip地址,但我无法这样做。我试图从Php $\u服务器[';远程地址]为每个用户返回相同的ip,php,ip,Php,Ip,我正在尝试获取访问者的ip地址,但我无法这样做。我试图从$\u服务器['REMOTE\u ADDR']获取访问者ip地址,但它为每个访问者返回相同的ip 我从不同的论坛上获得了几个代码,用于获取访问者的ip地址,但运气不好 下面是我尝试的代码 if ($_SERVER['HTTP_CLIENT_IP']) $ipaddress = $_SERVER['HTTP_CLIENT_IP']; else if($_SERVER['HTTP_X_FORWARDED_FOR'])
$\u服务器['REMOTE\u ADDR']
获取访问者ip地址,但它为每个访问者返回相同的ip
我从不同的论坛上获得了几个代码,用于获取访问者的ip地址,但运气不好
下面是我尝试的代码
if ($_SERVER['HTTP_CLIENT_IP'])
$ipaddress = $_SERVER['HTTP_CLIENT_IP'];
else if($_SERVER['HTTP_X_FORWARDED_FOR'])
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
else if($_SERVER['HTTP_X_FORWARDED'])
$ipaddress = $_SERVER['HTTP_X_FORWARDED'];
else if($_SERVER['HTTP_FORWARDED_FOR'])
$ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
else if($_SERVER['HTTP_FORWARDED'])
$ipaddress = $_SERVER['HTTP_FORWARDED'];
else if($_SERVER['REMOTE_ADDR'])
$ipaddress = $_SERVER['REMOTE_ADDR'];
还有以下几点
if (getenv('HTTP_CLIENT_IP'))
$ipaddress = getenv('HTTP_CLIENT_IP');
else if(getenv('HTTP_X_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_X_FORWARDED_FOR');
else if(getenv('HTTP_X_FORWARDED'))
$ipaddress = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ipaddress = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ipaddress = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ipaddress = getenv('REMOTE_ADDR');
有人能告诉我有什么问题吗?服务器上是否存在导致此问题的任何配置
或者有什么代码我应该试试吗?所有用户都在同一个代理后面?您的服务器在负载平衡器/反向代理后面吗…?那么你可能会一直看到它的IP。该代理是否也将原始IP转发给您取决于其设置,请查阅其文档。您能确定它是什么IP地址吗?是公共广播吗?