使用php获取用户ip地址的最可靠方法?

时间:2011-04-26 04:27:39

标签: php logging ip ip-address

  

可能重复:
  Getting Users Real IP address using PHP

我想记录使用php脚本访问我网站的任何人的IP地址,以阻止可能的垃圾邮件发送者。有没有一种可靠的方法来查找和记录任何人的真实IP地址或最可靠的方法?

更新:我的网站只要求用户输入密码,无需用户名。如果我想保留当前的验证方法,我可以使用哪些其他方法来阻止或阻止大多数垃圾邮件发送者?

2 个答案:

答案 0 :(得分:15)

在PHP中查找真实IP地址的函数

function getRealIpAddr()
{
    if (!empty($_SERVER['HTTP_CLIENT_IP']))   //check ip from share internet
    {
      $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))   //to check ip is pass from proxy
    {
      $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
      $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}

来源: - http://roshanbh.com.np/2007/12/getting-real-ip-address-in-php.html

答案 1 :(得分:1)

正如Dagon所说,$ _SERVER ['REMOTE_ADDR'],至少使用Apache。

但话说回来,它已经在Apache日志中了。