0

我正在尝试使用函数“clientIp”来获取用户的真实 IP,但这并没有返回任何内容。我正在使用这个:

$ipAddr = $this->request->clientIp();
print_r($ipAddr);die();

并打印它“ ::1 ”

而不是实际的 ip 打印,打印它 ::1

有人遇到过这个问题,我该如何解决?

4

1 回答 1

2

在 cakephp 2.xx 中试试这个

$this->request->clientIp();

您可以使用本机 PHP 服务器变量

$_SERVER['REMOTE_ADDR']

这是我在 CakePhP 上的应用程序的工作示例

function get_realIp(){
  if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
        $_SERVER['REMOTE_ADDR']=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }elseif(isset($_SERVER['HTTP_X_REAL_IP']){
        $_SERVER['REMOTE_ADDR']=$_SERVER['HTTP_X_REAL_IP'];
    }
return $_SERVER['REMOTE_ADDR'];
}

让我知道我是否可以为您提供更多帮助。

于 2013-07-05T09:40:28.227 回答