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

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]);
	  }
Не могли бы вы мне сдесь обьяснить на словах

Спасибо
 

netdog

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

%)
 

Фанат

oncle terrible
Команда форума
потому, что вместо реального адреса возвращает всякую мутотень
 

Фанат

oncle terrible
Команда форума
да.
можно ещё в добавок к 'REMOTE_ADDR' писать что-нибудь. Но только ВМЕСТЕ, а не вместо него.
Но, я думаю, что 'REMOTE_ADDR' вполне достаточно
 

divxak

Guest
А если использовать: getenv('HTTP_X_REAL_IP')?

Так - просто интересно
 

Фанат

oncle terrible
Команда форума
divxak, используй. кто тебе не даёт?
Tor, позволяй. Мне не жалко.
 

divxak

Guest
Те:

if(isset($_SERVER['HTTP_X_REAL_IP']))
return .....
else
return $_SERVER['REMOTE_ADDR']
 

Фанат

oncle terrible
Команда форума
Valensia, точно такой же бред, что и 'HTTP_X_FORWARDED_FOR'

-~{}~ 18.04.05 18:16:

divxak, а почему не if(isset($_SERVER['MY_SUPER_REAL_IP_WITH_STREET_ADDRESS_AND_PHONE_NUMBA']))?
 

divxak

Guest
Фанат а кроме как кричать бред и фуфло ты что-нить умеешь?

Не мог бы ты просто сказать почему?
 

Фанат

oncle terrible
Команда форума
А почему я?
Вот ты мне лучше ответь - чем тебя так этот 'HTTP_X_REAL_IP' впечатлил?
 

divxak

Guest
Valensia mod_realip (Apache)

-~{}~ 18.04.05 18:31:

Valensia
"...mod_realip - это модуль для Apache 1.3 для изменения адреса прокси-сервера на адрес клиента, переданный прокси-сервером в заголовках "X-Real-IP" или "X-Forwarded-For"..."
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
а если нет такого заголовка?
 

divxak

Guest
ТО что я написал - не есть готовая функция
 

Фанат

oncle terrible
Команда форума
divxak, ответь, пожалуйста, на вопрос - что означает 'HTTP_X_REAL_IP' , который ты так пропагандируешь?
 

fixxxer

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