Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: remote_host
Форумы портала PHP.SU » » HTTP и PHP » remote_host

Страниц (1): [1]
 

1. Budulianin - 13 Мая, 2011 - 10:37:38 - перейти к сообщению
Подскажите ещё пожалуйста что за переменная remote_host

Чёткого определения не нашёл. Видел упоминания что она была на php 2 а теперь мол нету

И что она выключена по умолчанию
2. EuGen - 13 Мая, 2011 - 10:41:18 - перейти к сообщению
Не отключена.
http://php.net/manual/en/reserve...ables.server.php
Она отображает имя хоста соответствующего посетителя. Однако Ваш веб-сервер должен быть сконфигурирован так, чтобы предоставлять эту переменную.
Цитата:
For example in Apache you'll need HostnameLookups On inside httpd.conf for it to exist.

Так же посмотрите http://php.su/functions/?gethostbyaddr
3. Budulianin - 13 Мая, 2011 - 10:44:24 - перейти к сообщению
EuGen пишет:
Не отключена.
http://php.net/manual/en/reserve...ables.server.php
Она отображает имя хоста соответствующего посетителя. Однако Ваш веб-сервер должен быть сконфигурирован так, чтобы предоставлять эту переменную.
Цитата:
For example in Apache you'll need HostnameLookups On inside httpd.conf for it to exist.

Так же посмотрите http://php.su/functions/?gethostbyaddr


Как я понял переменная REMOTE_HOST и функция gethostbyaddr осуществляют одну задачу?
4. EuGen - 13 Мая, 2011 - 10:47:00 - перейти к сообщению
Правильно. Поэтому можете использовать функцию, чтобы не делать реконфигурацию веб-сервера.
5. Budulianin - 13 Мая, 2011 - 10:54:27 - перейти к сообщению
EuGen пишет:
Правильно. Поэтому можете использовать функцию, чтобы не делать реконфигурацию веб-сервера.


Пишу функцию gethostbyaddr($ip) в переменной $ip реальный IP и вывожу $REMOTE_HOST

функция выводит этот же IP

А при выводе переменной вообще ничего не отображается

В каких целях используют эту функцию или переменную и почему переменную не вывел? потому что в настройках сервера она отключена?
6. EuGen - 13 Мая, 2011 - 10:58:16 - перейти к сообщению

Выводить нужно не $REMOTE_HOST а
$_SERVER['REMOTE_HOST'];
gethostbyaddr вернет исходный ip-адрес, если произошла ошибка.
7. Budulianin - 13 Мая, 2011 - 11:01:27 - перейти к сообщению
EuGen пишет:
Выводить нужно не $REMOTE_HOST а
$_SERVER['REMOTE_HOST'];
gethostbyaddr вернет исходный ip-адрес, если произошла ошибка.


А если $_SERVER['REMOTE_HOST']; не выводит ?
8. EuGen - 13 Мая, 2011 - 11:03:05 - перейти к сообщению
Значит, что веб-сервер не настроен на предоставление этой переменной и нужно использовать gethostbyaddr или переконфигурировать веб-сервер.
9. Budulianin - 13 Мая, 2011 - 11:05:38 - перейти к сообщению
EuGen пишет:
Значит, что веб-сервер не настроен на предоставление этой переменной и нужно использовать gethostbyaddr или переконфигурировать веб-сервер.


А имя хоста которое должна давать функция gethostbyaddr() может помочь в определении города посетителя?
10. EuGen - 13 Мая, 2011 - 11:13:05 - перейти к сообщению
Думаю, что особенно она Вам не поможет. Используйте определение по REMOTE_ADDR и HTTP_X_FORWARDED_FOR - для большинства случаев этого достаточно.
Те же, кто за прокси сидит, сами виноваты. Все равно Вы никак не сможете это определить.
На сайте сделайте ссылку "Город определился неправильно? Нажмите здесь." - которая ведет на явный выбор города, и все.
11. Budulianin - 13 Мая, 2011 - 11:17:16 - перейти к сообщению
EuGen пишет:
Думаю, что особенно она Вам не поможет. Используйте определение по REMOTE_ADDR и HTTP_X_FORWARDED_FOR - для большинства случаев этого достаточно.
Те же, кто за прокси сидит, сами виноваты. Все равно Вы никак не сможете это определить.
На сайте сделайте ссылку "Город определился неправильно? Нажмите здесь." - которая ведет на явный выбор города, и все.



Спасибо за консультацию, очень нужно было

 

Powered by ExBB FM 1.0 RC1