PHP获取客户端和服务器端IP
Posted 我曾如此奢望
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP获取客户端和服务器端IP相关的知识,希望对你有一定的参考价值。
客户端的ip变量:
$_SERVER[‘REMOTE_ADDR‘] :客户端IP,也有可能是代理IP
$_SERVER[‘HTTP_CLIENT_IP‘]:代理端的IP,可能存在,也可能伪造
$_SERVER[‘HTTP_X_FORWARD_FOR‘] :用户在哪个ip上使用的id,可能存在,也可能伪造
服务端的ip变量:
$_SERVER[‘SERVER_NAME‘] :需要使用函数gethostname()来获得,这个无论是服务器端还是客户端都能正常显示。
$_SERVER[‘SERVER_ADDR‘]:服务器端的ip地址,在服务器端测试ip地址,在客户端测试正常
getnev 获得系统的环境变量:
例子:
<?php class getIp(){ function ClientIp(){ $cIP= getenv($_SERVER[‘REMOTE_ADDR‘]); $cIP1 = getenv($_SERVER[‘HTTP_X_FORWORD_FOR‘]); $cIP2 = getenv($_SERVER[‘HTTP_CLIENT_IP‘]); $cIP1?$cIP= $cIP1?null; $cIP2?$cIP = $cIP2?null; return $cIP; } function serverIP(){ return gethostbyname($_SERVER[‘SERVER_NAME‘]); } } $getIP = new getIP(); $clientIp = getIP::clientIP(); $serverIp = getIP::serverIP(); ?>
以上是关于PHP获取客户端和服务器端IP的主要内容,如果未能解决你的问题,请参考以下文章