获得客户端真实的IP地址_PHP教程
程序员文章站
2022-05-31 08:43:44
...
function GetIP(){ if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")) $ip = getenv("HTTP_CLIENT_IP"); else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) $ip = getenv("REMOTE_ADDR"); else if (isset($_SERVER[REMOTE_ADDR]) && $_SERVER[REMOTE_ADDR] && strcasecmp($_SERVER[REMOTE_ADDR], "unknown")) $ip = $_SERVER[REMOTE_ADDR]; else $ip = "unknown"; return($ip); } 即使用户通过代理服务器上网,也能查出他的IP。但是要求代理服务器的类型是transparent类型。如果代理服务器是anonymous或者是high anonymous类型,HTTP_X_FORWARDED_FOR也无能为力了。