Как узнать страну сервера

Узнать местоположение IP-адреса

Информация о местоположении IP-адреса

185.151.241.146
Хост н/д
Континент Европа
RU
Россия
н/д
н/д
н/д
Широта 55.7386
Долгота 37.6068
н/д
Europe/Moscow (UTC +03:00)
OOO Network of data-centers Selectel
Точность

Расположение IP-адреса на карте

Геолокация по IP-адресу

Геолокация — это идентификация географического расположения устройства, такого как ПК, ноутбук, мобильный телефон, сервер, гаджет и так далее по IP-адресу.

Поскольку все IP-адреса в Интернете уникальны, а каждый владелец и провайдер официально зарегистрирован, должно быть возможно определять географическое расположение любого ПК или сервера просто по его IP-адресу, по крайней мере в теории. Одна из проблем заключается в том, что диапазоны IP-адресов администрируются несколькими сотнями региональных учреждений, и было бы не очень практично запрашивать в каждом из них напрямую. К счастью, некоторые компании специализируются на сборе информации о диапазоне IP-адресов со всего мира. Они продают эту информацию в виде консолидированных баз данных, которые легко интегрируются в любой веб-сервер с целью быстрого поиска информации о стране, регионе, городе или интернет-провайдере. Точность этих баз данных колеблется от 80 до 99,8%, согласно их собственным утверждениям.

Многие веб-серверы уже используют технологию геолокации для автоматического отображения контента на местном языке посетителя, предоставляя результаты регионального поиска или измененные страницы в определенных странах, в соответствии с местным законодательством, ограничивающим доставку музыки только для граждан США, для предотвращения подлога, в маркетинговых целях, во время веб-анализа, эта технология также широко используется в брандмауэрах, серверах доменных имен, серверах рекламы, маршрутизации, почтовых системах, веб-сайтах и других автоматизированных системах, где может быть полезна геолокация.

Читайте также:  Крупнейший по грузообороту морской порт страны

IP2GeoLocation.com веб-сервис IP-геолокации обеспечивает поиск IP-адреса в базе геолокации и возвращает информацию о местоположении, такую как: континент, код страны, название страны, регион или штат, город, широта и долгота, почтовый индекс, часовой пояс, интернет-провайдер или название компании и так далее. Для поиска отправьте запрос в строку сервиса, и вы получите географическое расположение IP-адреса в течении нескольких секунд. Индекс результатов поиска включает в себя более 4 миллиардов уникальных IP-адресов.

Этот бесплатный и простой онлайн-инструмент позволит вам узнать владельца, интернет-провайдера и географическое местоположение любого веб-сайта, домена или IP-адреса. Проверка IP-адресов полезна, когда вам нужно определить, откуда приходят посетители вашего сайта. У вас может быть веб-сайт электронной коммерции, и вы хотели бы знать, где находятся ваши потенциальные клиенты, предварительно заполнить код страны в формах, отобразить другой язык и уменьшить количество случаев мошенничества с кредитными картами, внедрив систему предотвращения мошенничества на основе географического местоположения. Или, возможно, вы захотите бороться со спаммерами и хакерами, узнать где они находятся. Просто введите IP-адрес или имя хоста, и вам будет показано местоположение на карте, координаты, страна, регион, город и интернет-провайдер. Вам также может быть интересно узнать, что ваш IP-адрес раскрывает о вас.

Источник

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

В этой статье рассмотрим, как в PHP можно узнать IP клиента и сервера, а также разберём как зная IP клиента определить его страну и город.

Как в PHP получить IP адрес посетителя сайта

Получить IP адрес клиента в PHP можно через суперглобальный массив $_SERVER . В этом массиве IP адрес посетителя доступен через ключ REMOTE_ADDR .

Но, если клиент использует прокси-сервер, то значение $_SERVER[‘REMOTE_ADDR’] будет содержать IP последнего прокси-сервера, через который клиент попал на сайт.

В этом случае, чтобы узнать IP посетителя можно попробовать использовать $_SERVER[‘HTTP_CLIENT_IP’] и $_SERVER[‘HTTP_X_FORWARDED_FOR’] . HTTP_CLIENT_IP и HTTP_X_FORWARDED_FOR – это заголовки, содержащие IP адрес пользователя. Данные заголовки устанавливает прокси-сервер. Обычно прокси-сервер устанавливает один из них. Данным в этих заголовках можно доверять, только если прокси-сервер надёжный. В противном случае, им доверять не стоит, т.к. их можно очень просто подделать. В этом случае лучше просто использовать $_SERVER[‘REMOTE_ADDR’] или сохранять в базу как $_SERVER[‘REMOTE_ADDR’] , так и заголовок, устанавливаемый прокси-сервером.

Определение страны по 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 посетителя к той или иной стране.

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

Для определения города, потребуется загрузить архив с базой данных городов для Sypex Geo, распаковать его и загрузить на сервер.

Скрипт в этом случае будет следующий:

Для автоматического обновления баз можно воспользоваться этим архивом. В этом архиве находится php скрипт. Этот скрипт необходимо настроить, т.е. указать в нём URL для скачивания базы и пути к файлам на сервере. После этого загрузить его на сервер и настроить его запуск по расписанию с помощью cron.

Определение страны и города по ip через сервис через сервис ipstack

Рассмотрим ещё один вариант определения в php местоположения по ip посетителя, но уже не через Sypex Geo, а с помощью сервиса ipstack.

Сервис ipstack имеет бесплатный план, который позволяет обрабатывать до 10000 запросов в месяц.

Для получения бесплатного плана нажимаем на кнопку «GET FREE API KEY» и переходим на страницу, на которой нужно заполнить регистрационную карточку.

После регистрации, на личной странице ipstack вам будет назначен «API Access Key», который нужно скопировать. Он нам потребуется при создании php скрипта.

Как в PHP получить IP адрес сервера

Узнать IP адрес сервера в PHP можно с помощью следующей инструкции:

Пример реализации определения локации в CMS MODX

В качестве примере рассмотрим, как в CMS MODX Revolution можно очень просто без сторонних сервисов осуществить определение страны посетителя. Разработаем решение на базе Sypex Geo.

1. Для этого сначала нужно загрузить Sypex Geo в проект:

Файл «SxGeo.php» – это основной скрипт, а «SxGeo.dat» – это база стран. Этих двух файлов достаточно для определения страны пользователя по его ip. Дополнительно в каталоге SxGeo ещё расположен файл «SxGeoCity.dat», данный файл в текущей реализации не нужен, он может потребовать, если в проекте потребуется определять не только страну пользователя, а ещё его регион и город.

2. Создадим сниппет, например «get_location.php». В качестве примера организуем это с помощью файлов. Для этого нужно чтобы был установлен pdoTools и в настройках включена опция «Использовать Fenom на страницах».

Код сниппета «get_location.php»:

Поместим файл «get_location.php» в каталог /core/elements/snippets/ .

Данный сниппет будет определять страну и помещать его код в плейсхолдер countrycode .

3. После этого в нужных шаблонах поместим код вызова сниппета и сохранение значение плейсхолдера countrycode в переменную $country_code .

Всё теперь чтобы написать логику достаточно использовать эту переменную.

Источник

Оцените статью