Ошибка геолокации с IP-адресом 127.0.0.1 - PullRequest
0 голосов
/ 11 сентября 2010

ОК, поэтому я попытался реализовать это, http://ipaddressextensions.codeplex.com/.

Отображает вывод как: -

127.0.0.1 ЗАБРОНИРОВАН ZZ

Что на земле это "ЗАБРОНИРОВАН" и "ZZ"? Он должен отображаться как «ИНДИЯ В».

IP-адрес локального хоста. Хорошо, а как насчет названия страны и кода страны? Почему они не отображаются правильно? Что мне нужно изменить в моем коде?

Ответы [ 3 ]

11 голосов
/ 11 сентября 2010

127.0.0.1 - зарезервированный IP-адрес, обозначающий localhost (компьютер, на котором работает код).Это «действительный» IP-адрес для каждого компьютера, работающего по протоколу TCP / IP.

Для IP-поиска требуется реальный IP-адрес для правильной работы.*

Что касается кода страны - это, вероятно, двухсимвольный код ISO страны (см. здесь ), поэтому вам необходимо перевести код в правильную страну.ZZ нет в таблице, что означает отсутствие страны.

4 голосов
/ 11 сентября 2010

127.0.0.1 известен как адрес обратной связи и используется вашей системой для эффективного общения с самим собой. В результате ни одна страна не связана с этим IP-адресом ... она есть везде в каждой системе.

Если вы разместите свой код в Интернете, вы получите более подходящие результаты, поскольку каждая система посещений будет использовать публичный IP-адрес для доступа к вашему серверу.

1 голос
/ 11 сентября 2010

Когда вы проводите тестирование из дома, сервер и пользователь едины (ваш компьютер).Поэтому нельзя ожидать, что он покажет страну, поскольку IP-адрес для IIS является собственным адресом.

Ваш код, кажется, в порядке.Также вы можете использовать бесплатный хост ASP.NET, чтобы попробовать ваш сайт в Интернете.Есть много таких, как HelioHost , 0000free и т. Д.

Что касается части редактирования вашего вопроса, если вы используете разные версии сайта для каждой страны, тоНе лучше использовать переключатель.

switch(iso3166TwoLetterCode.ToUpper())
{
    case "IN" : Response.Redirect("www.mysite.in");
    case "FR" : Response.Redirect("www.mysite.fr");
    ...
    Default : Response.Redirect("www.mysite.in");
}

Я думаю, что это выглядит аккуратнее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...