如何获取客户端真实IP?
在system/helpers/common_helper.php文件if ( ! function_exists('get_ip'))
{
function get_ip()
{
$CI =& get_instance();
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip=$_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}else {
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
}
不知道这个方法获取的IP地址是否真实?
$this->input->ip_address(); public function getInfo ()
{
$proxy="";
$IP = "";
if (isSet($_SERVER))
{
if (isSet($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
$IP = $_SERVER["HTTP_X_FORWARDED_FOR"];
$proxy= $_SERVER["REMOTE_ADDR"];
}
elseif (isSet($_SERVER["HTTP_CLIENT_IP"]))
{
$IP = $_SERVER["HTTP_CLIENT_IP"];
}
else
{
$IP = $_SERVER["REMOTE_ADDR"];
}
}
else
{
if ( getenv( 'HTTP_X_FORWARDED_FOR' ) )
{
$IP = getenv( 'HTTP_X_FORWARDED_FOR' );
$proxy = getenv( 'REMOTE_ADDR' );
}
elseif ( getenv( 'HTTP_CLIENT_IP' ) )
{
$IP = getenv( 'HTTP_CLIENT_IP' );
}
else
{
$IP = getenv( 'REMOTE_ADDR' );
}
}
if (strstr($IP, ','))
{
$ips = explode(',', $IP);
$IP = $ips;
}
$RemoteInfo=$IP;
$RemoteInfo=@GetHostByAddr($IP);
$RemoteInfo=$proxy;
return $RemoteInfo;
} steven_mlc 发表于 2012-4-12 11:16 static/image/common/back.gif
$this->input->ip_address();
额,原来CI已经有了啊! lynn.wang 发表于 2012-4-12 11:30 static/image/common/back.gif
public function getInfo ()
{
$proxy="";
谢谢,不过CI已经自带有了! 呵呵~ 呵呵 呵呵
页:
[1]