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'];
}
дайте мне знать, если я могу помочь вам больше.