Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | PHP-Fusion SF - Система Управлением Сайта | Народный SF Fusion
# 1 Тема: Про Про-кси
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 24 Августа 2008, 14:34:02
Собственно про прокси, которые возращают норм ip (не анонимные то есть)

Следующий код меняет определение ипа в мейн коре:

строка
define("USER_IP", $_SERVER['REMOTE_ADDR']);


меняется на

if (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) {
define("USER_IP", $_SERVER["HTTP_X_FORWARDED_FOR"]);
}
else {
define("USER_IP", $_SERVER['REMOTE_ADDR']);
}




и вопрос отсюда - а оно нужно?
- я веду к тому, что избавит ли это от проблем с любыми проксями (по типу - либо ип юзера, либо ип юзера через прокси, либо либо ип прокси)?

PS При работе с обычным прокси и обычным ипом - результат конечно чудный, но мож есть подводные камни?
Если же все норм - может включить это в новую сборку?


--------------------
Retired
^ наверх ^
# 2  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 25 Августа 2008, 14:30:29
ап

и еще вариант , насколько целесообразен?

<?php
$ip = getenv('REMOTE_ADDR');
echo gethostbyaddr($ip);
?>
<P>Ваш
<?
if (getenv('REMOTE_ADDR')) { $ip = getenv('REMOTE_ADDR'); }
elseif (getenv('HTTP_FORWARDED_FOR')) { $ip = getenv('HTTP_FORWARDED_FOR'); }
elseif (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); }
elseif (getenv('HTTP_X_COMING_FROM')) { $ip = getenv('HTTP_X_COMING_FROM'); }
elseif (getenv('HTTP_VIA')) { $ip = getenv('HTTP_VIA'); }
elseif (getenv('HTTP_XROXY_CONNECTION')) { $ip = getenv('HTTP_XROXY_CONNECTION'); }
elseif (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); }
else { $ip = 'unknown'; }

echo 'IP: '.$ip;
?>



--------------------
Retired
^ наверх ^
Перейти на форум:


105,450,898 уникальных посетителей
сейчас: 22 Ноября 2024, 02:54:24
Генерация страницы: 0.07 сек.

Original size:14 кб.
GZipped size: 5 кб.
Compression:67%