cakephp 2.3 не возвращает реальный IP пользователя

Я пытаюсь использовать функцию "clientIp", чтобы получить реальный IP пользователя, но это ничего не возвращает. Я использую это:

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

И распечатать это "::1 "

вместо фактического ip print распечатайте его:: 1

У кого нибудь была эта проблема, как можно решить?

1 ответ

Решение

Попробуйте это в 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'];
}

дайте мне знать, если я могу помочь вам больше.

Другие вопросы по тегам