Как в PHP узнать IP пользователя и определить его страну

Как узнать имя пользователя компьютера php

У меня есть веб-приложение PHP в интрасети, которое может извлечь IP и имя хоста текущего пользователя на этой странице, но мне было интересно, есть ли способ получить/извлечь их имя пользователя Active Directory/Windows. Возможно ли это?

Регистрация AUTH_USER запрос переменной. Это будет пусто, если ваше веб-приложение позволяет анонимный доступ, но если ваш сервер использует базовую или встроенную проверку подлинности Windows, он будет содержать имя пользователя, прошедшего проверку подлинности.

в домене Active Directory, если ваши клиенты работают под управлением Internet Explorer и разрешения веб-сервера / файловой системы настроены правильно, IE будет молча отправлять свои учетные данные домена на ваш сервер и AUTH_USER будет MYDOMAINuser.name без пользователям необходимо явным образом войти в веб-приложение.

я использовал это, чтобы получить имя пользователя и домен:

$user возвращает значение типа: DOMAINusername в нашей сети, а затем это просто случай удаления DOMAIN из строки.

это работало в IE, FF, Chrome, Safari (протестировано) до сих пор.

посмотрите на функции библиотеки LDAP PHP:http://us.php.net/ldap.

Active Directory [в основном] соответствует стандарту LDAP.

Если вы используете Apache в Windows, вы можете установить mod_auth_sspi из

инструкции находятся в файле установки, и есть whoami.пример php. (Это просто случай копирования mod_auth_sspi.Итак, файл в папку и добавление строки в httpd.conf.)

информация основана на сеансе, поэтому одиночный (ish) вход возможен даже в Firefox.

нет. Но то, что вы можете сделать, это включить LDAP администратора Active Directory, чтобы пользователи могли поддерживать один набор учетных данных

Проверьте исправленный модуль аутентификации NTLM для Apache https://github.com/rsim/mod_ntlm

на основе модуля аутентификации NTLM для Apache / Unix http://modntlm.sourceforge.net/

Если вы ищете для получения удаленного пользователя IDSID / Username, используйте:

вы получите что-то вроде iamuser1-mys.corp.company.com

отфильтруйте остальную часть домена, и вы сможете получить только idsid.

вы можете сказать getenv(‘USERNAME’)

get_user_name работает так же, как getenv(‘USERNAME’);

У меня были проблемы с кодировкой (с кириллицей) с использованием getenv(‘USERNAME’)

ссылка пытается также выяснить, является ли AUTH_USER частью определенной группы доменов; умный способ сделать это-создать заблокированную папку с текстовыми файлами (может быть пустым). Установите безопасность только с группой безопасности / дистрибутива, которую вы хотите проверить. После запуска @file_get_contents (

это простой пример интеграции NTLM AD, позволяет единый вход в Internet Explorer, требует входа / настройки в других браузерах.

в вашем Apache httpd.файл conf

и если вам нужен модуль, эта ссылка пригодится:

попробуйте этот код :

вы получаете имя пользователя windows(AD) в php

Я пробовал почти все эти предложения, но все они возвращали пустые значения. Если у кого-то еще есть эта проблема, я нашел эту удобную функцию на php.net (http://php.net/manual/en/function.get-current-user.php):

Это был единственный способ, которым я, наконец,смог получить имя пользователя active directory. Если ни один из вышеперечисленных ответов не сработал,попробуйте.

Определение страны по ip с помощью Sypex Geo

Основные шаги по созданию php скрипта, с помощью которого можно будет определять страну по ip:

1. Скачаем Sypex Geo для PHP и базу данных стран. Sypex Geo распространяется по лицензии BSD, т.е. является абсолютно бесплатным.

2. Распакуем архивы и загрузим на сервер файлы «SxGeo.php» и «SxGeo.dat». В качестве примера, создадим на сервере папку SxGeo и загрузим эти файлы в неё.

3. Создадим свой скрипт, например, «get_country_code.php».

4. Вставим в этот файл следующий код:

5. Включим файл «get_country_code.php» в другие скрипты, в которых нужно реализовать выполнение кода в зависимости от принадлежности ip посетителя к той или иной стране.

Откуда пришел пользователь

Часто нам необходимо узнать с какой именно страницы к нам попал пользователь. В этом нам может помочь элемент по имени HTTP_REFERER. В этом элементе как раз и содержится адрес страницы, с которой пользователь попал на страницу, на которой мы вызываем элемент HTTP_REFERER. Переход, соответственно, должен происходить по ссылке. Создадим еще одну страницу, например test.php, и в ней пропишем ссылку на страницу index.php. На странице index.php пропишем код:

Теперь попробуем перейти по ссылке. В своем случае я получу такой адрес страницы — //localhost/arr_server/test.php (обе страницы у меня в каталоге arr_server, а сам скрипт тестируется на локальном сервере).

Как работает PHP класс «Информация о пользователе» по user-agent?

Из папки arrays загружаются ассоциативные массивы, содержащие аббревиатуры или короткие название браузеров, операционных систем или роботов, которые встречаются в строке user-agent, полученную из браузера. После получения данных динамично вызываются все методы, имеющие префикс set_ и заполняют переменные класса, так как только они являются публичными, и только их можно вывести за пределы видимости класса.

Это был пример того, как выглядит массив с «браузерами». Переменную, содержащую сам массив, указывать не нужно, ибо достаточно просто начать код с return. Если данный файл вызвать через require или require_once, а результат выполнения присвоить переменной, данная переменная будет содержать в себе массив (как это делает метод $this->load() в нашем классе).

Как получить домен сайта через php!? -> SERVER_ADDR

Есть замечательная супер глобальная переменная, которая называется
[H1toH2]

Как получить домен сайта через php -> HTTP_HOST

Возьмем
[H1toH2]

Как получить домен сайта через php!? -> SERVER_ADDR

Есть замечательная супер глобальная переменная, которая называется
[H1toH2]

Как получить домен без поддомена php

Это один из поисковых запросов, по которому заходят на данную страницу: «получить домен без поддомена php»

Прежде чем мы приступим к теме «получения поддомена» — пару слов:

В интернете предлагается(один из способов) вот такая конструкция для получения поддомена —

Относительно моего поддомена — «http://example.dwweb.ru/» — это сработает.

А если мы встретимся с таким доменами как «название.com.ru» или «название.com.ua» — выдаст «com.ru» — что будет ошибкой.

Я не буду долго вам рассказывать о то, как «получить домен без поддомена php«.
Потому, что у нас уже есть страница на подобную тему


SERVER, вы можете получить всё её содержание таким образом:

Поскольку это массив, то ведет он себя тоже как массив, и если вы его вывели, то сокрее всего вы там сможете увидеть такую ячейку -> SERVER_NAME

Берем переменную

SERVER добавляем ячейку массива в квадратных скобках -> [SERVER_NAME] и выводим с помощью echo:

Выведем домен сайта через php прямо здесь:

[/H1toH2]

SERVER добавим новую ячейку массива -> [HTTP_HOST] и выводим с помощью echo:

И давайте также выведем домен сайта через php с помощью
[H1toH2]

Как получить домен сайта через php!? -> SERVER_ADDR

Есть замечательная супер глобальная переменная, которая называется

SERVER, вы можете получить всё её содержание таким образом:

Поскольку это массив, то ведет он себя тоже как массив, и если вы его вывели, то сокрее всего вы там сможете увидеть такую ячейку -> SERVER_NAME

Берем переменную

SERVER добавляем ячейку массива в квадратных скобках -> [SERVER_NAME] и выводим с помощью echo:

Выведем домен сайта через php прямо здесь:

[/H1toH2]

SERVER[HTTP_HOST]:

[/H1toH2]

SERVER, вы можете получить всё её содержание таким образом:

Поскольку это массив, то ведет он себя тоже как массив, и если вы его вывели, то сокрее всего вы там сможете увидеть такую ячейку -> SERVER_NAME

Берем переменную

SERVER добавляем ячейку массива в квадратных скобках -> [SERVER_NAME] и выводим с помощью echo:

Выведем домен сайта через php прямо здесь:

[/H1toH2]

Способы определения

Как же можно узнать IP-адрес компьютера в локальной сети по имени, а также некоторые важные характеристики? Для этого существует несколько способов:

  1. Нажать «Пуск» — «Выполнить» (или «Win» + «R»), ввести в открывшемся окошке «msinfo32». Откроются «Сведения о системе», в которых будет и название системы;
  2. Нажать правой кнопкой мыши по рабочему столу и выбрать «Свойства». Прокрутив открывшееся окошко вниз, можно найти полное наименование;
  3. Нажать правой кнопкой по любому ярлыку на рабочем столе (не по папке или файлу), затем нажать «Свойства» — «Подробнее». Внизу в окошке будет указано наименование.

Специальные программы

Существует немало специальных программ, которые запускают сканирование локальной сети интернет и помогают находить имена всех входящих в нее компьютеров. Они работают с разными ОС: Windows, Ubuntu от Linux и другими.

Одной из таких программ является MyLanViewer. При сканировании все ПК отображаются в удобном виде: показывают их имена, IP и MAC адреса, общие файлы и другие характеристики.

Также с помощью MyLanViewer можно отслеживать изменения состояния компьютеров и управлять ими.

 Программа позволяет найти название компьютера, хоста и другие данные.

Загрузить софт можно с официального сайта. Затем необходимо установить программу и запустить ее. Далее потребуется:

  1. Зайти во вкладку «Scanning», кликнуть по кнопке «Start Fast Scanning»;
  2. Откроется список, в нем необходимо выбрать строчку со словами «Your Computer» и нажать на плюсик;
  3. Откроется новый подсписок. Указанное наименование компьютера будет в строке с надписью «Host Name».

Важно! Программа платная, бесплатная версия доступна первые 15 дней.

«Командная строка»

Этот способ позволит узнать наименование компьютера, его идентификатор, IP и другие данные. Посмотреть его можно в несколько шагов:

  1. Нужно открыть «Пуск» — «Командная строка»;

Важно! Вместо «Командной строки» может быть пункт «Windows PowerShell».

  1. Откроется отдельное окошко, в котором будет строка «Users» и название. В ее конце необходимо добавить «>ipconfig», затем нажать «enter»;
  2. Откроются блоки подключения по локальной сети, там необходимо найти «IPv4-адрес» и скопировать значение;
  3. В строку «C:Users» после наименования нужно вписать «>tracert [пробел] [IP-адрес, который был скопирован]»;
  4. После сроки «Трассировка маршрута с максимальным числом прыжков» в конце строки будет указано название.

Чтобы получить дополнительную информацию, в строке «C:Users» нужно вписать команду «>nbtstat -a [пробел] [IP-адрес, который был скопирован]». Все данные будут размещены в таблице «NetBIOS-имен удаленных компьютеров»: название, состояние, тип.

Узнать название компьютера в сети можно через команду «>hostname» в строке «C:Users».

 Работать в командной строке можно при помощи команд.

Изменение

Самый простой способ узнать и изменить название следующий:

  1. Нужно нажать правой кнопкой «Пуск» — «Система»;
  2. Название будет в строке «Полное имя»;
  3. Чтобы поменять его, нужно кликнуть по «Изменить параметры» — «Имя компьютера», после чего указать новое. Тут же можно изменить дополнительные данные, однако важно помнить, что внесенные изменения могут повлиять на доступ к сети и ее ресурсам.

Как найти имя компьютера в msinfo32

Msinfo32 – это команда, которую нужно выполнить для того, чтобы открыть окно «Сведения о системе». В этом окне можно получить большое количество информации о текущей конфигурации системы и состоянии Windows. В частности, здесь можно найти имя компьютера в локальной сети.

Итак, для того чтобы воспользоваться данным способом вам нужно нажать комбинацию клавиш Windows-R и выполнить команду «msinfo32». Также вы можете ввести данную команду в поиск в меню «Пуск».

команда msinfo32

После этого перед вами должно появиться окно «Сведения о системе». Здесь нужно выделить мышкой первый раздел и обратить внимание на информацию в правой части окна.

окно Сведения о системе

Тут нужно найти строку «Имя системы», в которой и будет указано имя компьютера.

5 способов как узнать имя компьютера

Существует много способов для того, чтобы узнать имя компьютера, но я расскажу вам только о пяти. Этого, я думаю, вполне достаточно. Все эти способы можно применить в любой операционной системе Windows/

Определяем имя компьютера при помощи окна «Выполнить»

Открываем окно «Выполнить». Для этого жмем на клавиатуре горячие клавиши Win + R.

Откроется окно, в котором необходимо ввести команду msinfo32 (без пробела)

И ниже нажать кнопку «ОК».

Откроется окно «Сведения о системе», в котором необходимо найти «Имя системы» в колонке «Элемент».

Это и есть имя компьютера.

Определяем имя компьютера через «Мой компьютер»

Кликните правой кнопкой мыши по значку «Мой компьютер» (в Windows XP), или «Компьютер» (в Windows 7), или «Этот компьютер» (в Windows 10), и выберите в выпадающем списке контекстного меню пункт «Свойства».

Если на вашем рабочем столе нет такого значка, то найдите одноименную ссылку в меню «Пуск», кликните по ней правой кнопкой мыши и выберите пункт «Свойства».

Откроется окно «Система». Справа найдите блок «Имя компьютера, имя домена и параметры рабочей группы», а в нем строку «Компьютер» и «Полное имя».

Это и есть имя вашего компьютера.

Узнаем имя компьютера по ярлыку

Выбираем любой ярлык на рабочем столе. Это должен быть именно ярлык, а не папка и не файл.

У ярлыка внизу справа имеется маленькая синяя стрелочка.

Кликните правой кнопкой мыши по ярлыку и выберите в выпадающем списке пункт «Свойства». Он обычно находится в самом низу.

Откроется окно «Свойства: Название ярлыка». Перейдите на вкладку «Подробно». В строке «Владелец» и «Компьютер» вы увидите имя вашего компьютера.

Узнаем имя компьютера через командную строку

Для того, чтобы быстро попасть в командную строку воспользуемся опять окном «Выполнить». Для этого на клавиатуре жмем заветные клавиши Win + R и вписываем команду cmd, и жмем ENTER (на клавиатуре) или кнопку «ОК».

В окне командной строки вводим команду hostname и жмем на клавиатуре кнопку ENTER.

Ниже вы увидите имя своего компьютера.

Узнаем имя компьютера по значку сети

Если ваш компьютер подключен к локальной сети, то кликните по значку сети в правом нижнем углу левой кнопкой мыши и выберите «Центр управления сетями и общим доступом».

В открывшемся окне справа в блоке «Просмотр основных сведений о сети и настройка» вы увидите значок компьютера и название под ним.

Это название и есть имя вашего компьютера.

Имя компьютера можно изменить. О том, как это сделать, читайте в статье

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector