|
|
|
| Подскажите, как узнать сетевое имя компьютера пользователя, если apache установлен на удалённом сервере (ОС Solaris).
REMOTE_ADDR можно же просмотреть через окружение apache, а вот сетевое имя никак.
Ясно, что через стандартные переменные не сделать, но может через выполнение команды типа ping (под Windows). | |
|
|
|
|
|
|
|
для: sLim80
(14.06.2006 в 13:31)
| | Для этого можно воспользоваться стандартной функцией gethostbyaddr()
<?php
echo gethostbyaddr($_SERVER['REMOTE_ADDR']);
?>
|
| |
|
|
|
|
|
|
|
для: sLim80
(14.06.2006 в 13:31)
| | Делал, но на выходе даёт просто IP адресс.
Если делать просто: print gethostbyaddr($REMOTE_ADDR);
получается тоже самое.
В интернете нашёл описание
(PHP 3, PHP 4)
gethostbyname - получает IP-адрес, соответствующий имени данного Internet-хоста.
string gethostbyaddr (string ip_address)
Возвращает имя Internet-хоста, специфицированного параметром ip_address. Если возникает ошибка, возвращает ip_address.
Получается, что у меня функция завершается с ошибкой.
А как можно просмотреть ошибку, которую выдаёт эта функция? | |
|
|
|
|
|
|
|
для: sLim80
(15.06.2006 в 06:50)
| | Это означает, что хосту прописано соответствие в DNS-сервере или не проходит запрос к DNS-серверу. Легально имя машины можно извлечь только с DNS-сервера, имя в локальной сети - он просто так не отдаст. | |
|
|
|