PHP:使用PHP脚本确定或检索访问者的IP地址

时间:2020-01-09 10:39:07  来源:igfitidea点击:

如何在Unix/Windows操作系统下使用PHP服务器端编程确定或检索访问者IP地址?
使用以下环境变量获取访问者IP地址:

没有检测代理: REMOTE_ADDR获取远程客户端IP地址

使用代理检测: HTTP_X_FORWARDED_FOR获取代理服务器IP地址。

PHP getenv()函数使用php getenv()函数读取环境值。

语法为:

getenv('VAR-NAME-HERE')

示例:获取IP地址的示例代码

这是PHP代码:

<html>
<head>
<title>What is my IP address?</title>
</head>
<body>
<?php
 
    if (getenv('HTTP_X_FORWARDED_FOR')) {
        $pipaddress = getenv('HTTP_X_FORWARDED_FOR');
        $ipaddress = getenv('REMOTE_ADDR');
echo "Your Proxy IP address is : ".$pipaddress. "(via $ipaddress)" ;
    } else {
        $ipaddress = getenv('REMOTE_ADDR');
        echo "Your IP address is : $ipaddress";
    }
?>
</body>
</html>

如果使用Apache/Nginx/Lighttpd安装和配置了GEOIP数据库,请尝试以下php代码获取访问者国家/地区名称:

$country = getenv('GEOIP_COUNTRY_NAME');
   echo "Your country : $country";

您可以通过访问此URL来尝试演示。