Помогите разобрать функцию

  • Автор темы Автор темы Valensia
  • Дата начала Дата начала

Valensia

Guest
Помогите разобрать функцию

Я проверяю данные от пользователя: текст сообщения и ip адрес. Надежен ли такой код:
PHP:
function realip(){
  if ($for = getenv('HTTP_X_FORWARDED_FOR')){
      $afor = explode(",", $for);
	  return trim($afor[0]);
	  }else
	  {
    return getenv('REMOTE_ADDR');
   }
 }
$text=nl2br($_POST['text']);
$ip=realip();

Функцию описанную выше я взял из одного скрипт, по-моему гостевой на http://sf.net. Я не могк понять что она делает в этом месте:
PHP:
if ($for = getenv('HTTP_X_FORWARDED_FOR')){
      $afor = explode(",", $for);
	  return trim($afor[0]);
	  }
Не могли бы вы мне сдесь обьяснить на словах

Спасибо
 
Смотрит, нет ли в заголовке HTTP_X_FORWARDED_FOR ипшек которые иногда вписовают утда проксики, если есть, то вытягивает первый ИП если нет, то возвращает REMOTE_ADDR

%)
 
потому, что вместо реального адреса возвращает всякую мутотень
 
да.
можно ещё в добавок к 'REMOTE_ADDR' писать что-нибудь. Но только ВМЕСТЕ, а не вместо него.
Но, я думаю, что 'REMOTE_ADDR' вполне достаточно
 
А если использовать: getenv('HTTP_X_REAL_IP')?

Так - просто интересно
 
divxak, используй. кто тебе не даёт?
Tor, позволяй. Мне не жалко.
 
Те:

if(isset($_SERVER['HTTP_X_REAL_IP']))
return .....
else
return $_SERVER['REMOTE_ADDR']
 
Valensia, точно такой же бред, что и 'HTTP_X_FORWARDED_FOR'

-~{}~ 18.04.05 18:16:

divxak, а почему не if(isset($_SERVER['MY_SUPER_REAL_IP_WITH_STREET_ADDRESS_AND_PHONE_NUMBA']))?
 
Фанат а кроме как кричать бред и фуфло ты что-нить умеешь?

Не мог бы ты просто сказать почему?
 
А почему я?
Вот ты мне лучше ответь - чем тебя так этот 'HTTP_X_REAL_IP' впечатлил?
 
Valensia mod_realip (Apache)

-~{}~ 18.04.05 18:31:

Valensia
"...mod_realip - это модуль для Apache 1.3 для изменения адреса прокси-сервера на адрес клиента, переданный прокси-сервером в заголовках "X-Real-IP" или "X-Forwarded-For"..."
 
а если нет такого заголовка?
 
divxak, ответь, пожалуйста, на вопрос - что означает 'HTTP_X_REAL_IP' , который ты так пропагандируешь?
 
mod_realip — это модуль для Apache 1.3 для изменения адреса прокси-сервера на адрес клиента, переданный прокси-сервером в заголовках "X-Real-IP" или "X-Forwarded-For". Предназначен для использования на бэкендах при реверсном проксировании.
 
Сверху