konto usunięte

Temat: Wykrywanie kraju po IP

Taki dosc nietypowy problem...

Mam 15 jezykow jednej strony, masa tresci sie pokrywa (generalnie wiem jak sprawdzic czy istnieje w innym jezyku dana podstrona czy nie, przekierowac itd) ale potrzebuje dobrego sposobu na wykrycie kraju, uzywajac IP uzytkownika.

Co chce zrobic:
- gosc wchodzi prawdpodobnie z googla na stronke
- sprawdzam jego IP, jesli wszedl np. na strone US a pochodzi on z UK
- to sprawdzam czy istnieje tresc dla tej samej www na UK stronie
- jesli tak to dostaje sugestie przekierowania na lokalna strone

Wiem ze mozna zrobic to na PHP, ale sam plik do bazy, CSV ma dobre 5.5 mega ;) Problem polega na tym ze jezeli ma to byc serverside, nie moze byc hostowane na naszych serwerach (nie widze powodu obciazania maszyn dodatkowymi milionami odwiedzin miesiecznie). Uzywajac JS nie da sie zrobic, bo nie mozna wykryc adresu IP. Uzycie navigator.language dziala bardzo losowo nie jest zalezne od ustawien systemu a przegladarki.

W gre wchodzi chyba tylko w formie uslugi (services). Jakies sugestie, a moze inne pomysly?

... stwierdzilem, iz wole sie najpierw zapytac, zanim ostro zaczne sie grzebac w temacie. Jest to jedna z tych rzeczy ktore chce zrobic i koniec ;)

konto usunięte

Temat: Wykrywanie kraju po IP

Jakbyś chciał to zrobić w PHP? Zakresy IP dla kolejnych państw czy myślałeś nad czymś innym?

---up---
Wiem, że po stronie serwera Cię nie zadowala, ale jeżeli zmienisz zdanie to polecam:
http://pear.php.net/package/Net_GeoIP/

Sam z tego korzystam. Może i troszkę waży, ale wg. mnie to dobry wybór.Patryk Szlagowski edytował(a) ten post dnia 07.12.10 o godzinie 18:34

konto usunięte

Temat: Wykrywanie kraju po IP

Jeśli nie chcesz hostować bazy na własnym serwerze to może coś takiego:

http://www.ip2location.com/ip-country-web-service.aspx
http://www.maxmind.com/app/country
http://ipinfodb.com/ip_location_api.php

Ogólnie jest dużo miejsc, które udostępniają serwisy pozwalające zlokalizować kraj na podstawie IP. Nie wiem czemu też nie chcesz samemu hostować taką bazę ? I co ma oznaczać kilka milionów odsłon więcej ? Odsłon będziesz mieć tyle samo, tylko musisz przy pierwszej odsłonie stronki odwołać się do bazy, aby dowiedzieć się z jakiego kraju ktoś pochodzi. Zresztą baza 5 MB to raczej mała, albo i nawet bardzo mała baza :)Mariusz Zieliński edytował(a) ten post dnia 07.12.10 o godzinie 18:52

konto usunięte

Temat: Wykrywanie kraju po IP

Mariusz Zieliński:
Nie wiem czemu też nie chcesz samemu hostować taką bazę ? I co ma oznaczać kilka milionów odsłon więcej

Strony sa za cachem AKAMAI, wiec w normalnym przypadku, kiedy user wchodzi na strone, nasze serwery WWW nie sa nekane podawaniem tresci ;)

Co do linkow, dzieki za podpowiedzi, zaraz wybadam czy jest to to, czego mi trzeba ;)Andrzej Winnicki edytował(a) ten post dnia 07.12.10 o godzinie 19:30
Rafał Korszuń

Rafał Korszuń co-owner @ Kleder

Temat: Wykrywanie kraju po IP

hmm możesz użyć coś takiego :)
http://techpatterns.com/downloads/php_language_detecti...

co do geolokalizacji to miałem już niezłe rozjazdy, nie tylko Polska w Niemczech, ale i Irlandia w USA

konto usunięte

Temat: Wykrywanie kraju po IP

Strony sa za cachem AKAMAI, wiec w normalnym przypadku, kiedy user wchodzi na strone, nasze serwery WWW nie sa nekane podawaniem tresci ;)

Ahh.. no to zmienia trochę postać rzeczy ;) W takim razie rozwiązanie serverside może być utrudnione. Webservice powinien być ok, tylko nie wiem na ile się opłaci wykupowanie dostępu versus postawienie bazki i ws na własnych maszynach przy ilości odsłon idącej w miliony.

Daj znać co wybrałeś ;)
Tomasz Pakuła

Tomasz Pakuła Developer - Citi
Research &
Development Center

Temat: Wykrywanie kraju po IP

Tak jak wspominałeś baza danych z informacjami geolokalizacyjnymi to kilka MB więc nie zrobisz tego całkowicie client side, Będziesz musiał zrobić jakiś request np ajaxowy i wtedy server side będzie miał ip requestu i może zwrócić ci informacje geolokalizacyjne (wtedy ustawiasz ciasteczko javascriptem zeby nie robić tego powtórnie przy kolejnych odwiedzinach). Możesz to (server side mechanizmu) hostować sam albo spróbować którejś z możliwości podanych w linkach powyżej. Pewnie google też będzie miało swoje api jak dobrze poszukasz.

konto usunięte

Temat: Wykrywanie kraju po IP

Możesz się też pobawić API Maxmind:

<script src="http://j.maxmind.com/app/geoip.js" type="text/javascript"></script>

<script type="text/javascript">
alert(geoip_city()); // Miasto
alert(geoip_country_name()); // Kraj
alert(geoip_region_name()); // Region
</script>

konto usunięte

Temat: Wykrywanie kraju po IP

Andrzej Winnicki:
Taki dosc nietypowy problem...

Mam 15 jezykow jednej strony, masa tresci sie pokrywa (generalnie wiem jak sprawdzic czy istnieje w innym jezyku dana podstrona czy nie, przekierowac itd) ale potrzebuje dobrego sposobu na wykrycie kraju, uzywajac IP uzytkownika.

do wyboru języka nie używaj kraju, chyba że masz stronę lokalna danego kraju i chcesz prezentować treść na podstawie lokalizacji, jak to robi google (np. Google Polska).

Ale google jest w tej sprawie również nie konsekwentny, popularny gmail korzysta już z innych mechanizmów.

Do wyboru języka wykorzystuje się ustawienia przeglądarki.

Sprawdź zawartość zmiennej serwer gdy jesteś w trybie www (czyli Twój skrypt uruchomiono przez www). Znajdziesz tam liste priorytetów jeśli chodzi o języki.

http://www.google.com/search?q=HTTP+LANGUAGE+ACCEPT
http://www.google.com/search?q=browser+language+detection

edit:

Dlaczego rozwiązanie na podst. IP jest anty-paternem ?

Przykładowo ja preferuję treści w języku angielskim i mam takie ustawienia w przeglądarce, gdyby serwisy nie respektowały takiej konfiguracji mojej przeglądarki, nie miało by to żadnego sensu.

Znowu w Szwajcari respektuje się chyba 3 języki urzędowe, jest parę krajów gdzie jest 2 lub więcej. Mieszkańcy tych krajów mają prawo wybrać sobie język niekoniecznie na podstawie miejsca, z którego klikają.

W Irlandii mieszka dużo Polaków, może preferują strony w języku polskim.

Myślę, że to wystarczająca ilość powodów.Tomasz Grzechowski edytował(a) ten post dnia 08.12.10 o godzinie 12:11
Waldemar Jonik

Waldemar Jonik właściciel,
webmaster,
programista, JW Web
Development

Temat: Wykrywanie kraju po IP

a może ktoś polecić jakieś rozwiązanie geolokalizacji na poziomie województwa, coś co dobrze sobie radzi z lokalizacją na terenie Polski?

może być nawet komercyjna baza danych IP, którą można by u siebie na serwerze załadować i np co jakiś czas tylko aktualizować listę numerów IP.

konto usunięte

Temat: Wykrywanie kraju po IP

Tomasz Grzechowski:

W zwiazku z tym ze IP wymusza na mnie kombinowanie w strone server-side, opcja byly ustawienia przegladarki i musze przyznac - ze ma to takze sens :) I nie komplikuje mojego zycia za bardzo.

http://www.nvidia.eu/temp/test.html
szybki test na kilku przegladarkach... oczywiscie kazda wypluwa inne kody cholera, nie wspominajac juz o IE ;)

ps. mtv.com uzywa czegos co mam na mysli. Nie wiem czy na PL bedzie dzialac.Andrzej Winnicki edytował(a) ten post dnia 08.12.10 o godzinie 12:35

konto usunięte

Temat: Wykrywanie kraju po IP

Dobry test, wszystko mam undefined :) (FF3)Michał Wachowski edytował(a) ten post dnia 08.12.10 o godzinie 12:33

konto usunięte

Temat: Wykrywanie kraju po IP

Michał Wachowski:
Dobry test, wszystko mam undefined :) (FF3)[edited]Michał

I to jest wlasnie problem. Czasami dziala calkiem niezle, bazujac na moich przegladarkach w systemie byloby "w miare ok", po za safari.
Ale widzialem pare przykladow z ktorych odpowiedzi nie bylem zadowolony :)

konto usunięte

Temat: Wykrywanie kraju po IP

Waldemar Jonik:
a może ktoś polecić jakieś rozwiązanie geolokalizacji na poziomie województwa, coś co dobrze sobie radzi z lokalizacją na terenie Polski?

może być nawet komercyjna baza danych IP, którą można by u siebie na serwerze załadować i np co jakiś czas tylko aktualizować listę numerów IP.
Podane przeze mnie przykład całkiem nieźle sobie radzi z województwami z tego co zauważyłem. Tylko, że nie działa po stronie serwera.
Rafał Korszuń

Rafał Korszuń co-owner @ Kleder

Temat: Wykrywanie kraju po IP

zrób ten [http://techpatterns.com/downloads/php_language_detecti...] kawałek kodu jako service i umieść gdzieś aby był dostęp

zobacz sobie na stronce czy działa tak jak chcesz i nie korzystaj z IP bo to jest strasznie niepewna metoda,

ps. wikipedia i inne takie korzystają z tego typu rozwiązań
Waldemar Jonik

Waldemar Jonik właściciel,
webmaster,
programista, JW Web
Development

Temat: Wykrywanie kraju po IP

Andrzej Ośmiałowski:
Podane przeze mnie przykład całkiem nieźle sobie radzi z województwami z tego co zauważyłem. Tylko, że nie działa po stronie serwera.

tylko jak to obie poradzi przy dużym ruchu na ww np na portalu społecznościowym gdzie np każdą reklamę chcemy targetować względem województwa także dla osób niezalogowanych? czy takie ciągłe pobieranie danych z zewnątrz nie spowoduje problemów z szybkością działania?

jak sobie z tym radzą duże portale gdzie można wykupić reklamy targetowane na określone rejony skąd klika użytkownik?
Tomasz Pakuła

Tomasz Pakuła Developer - Citi
Research &
Development Center

Temat: Wykrywanie kraju po IP

Waldemar Jonik:
Andrzej Ośmiałowski:

Podane przeze mnie przykład całkiem nieźle sobie radzi z województwami z tego co zauważyłem. Tylko, że nie działa po stronie serwera.

tylko jak to obie poradzi przy dużym ruchu na ww np na portalu społecznościowym gdzie np każdą reklamę chcemy targetować względem województwa także dla osób niezalogowanych? czy takie ciągłe pobieranie danych z zewnątrz nie spowoduje problemów z szybkością działania?

jak sobie z tym radzą duże portale gdzie można wykupić reklamy targetowane na określone rejony skąd klika użytkownik?

Możesz sobie kupić odpowiednią bazę danych po prostu.

konto usunięte

Temat: Wykrywanie kraju po IP

Andrzej Winnicki:
...
Co chce zrobic:
- gosc wchodzi prawdpodobnie z googla na stronke
- sprawdzam jego IP, jesli wszedl np. na strone US a pochodzi on z UK
...

Złe założenia.

Zbuduj stronę, której wersje językowe będą na osobnych adresach (domenach). pozwól je (te wersje) zaindeksować przez Google a wtedy: Niemiec w "swoim google" zobaczy wersję niemiecką, Rosjanin rosyjską a Polak polską.

Amen.
Waldemar Jonik

Waldemar Jonik właściciel,
webmaster,
programista, JW Web
Development

Temat: Wykrywanie kraju po IP

Tomasz Pakuła:

Możesz sobie kupić odpowiednią bazę danych po prostu.

tak domyślam się, tylko czy możecie polecić coś dobrego - sprawdzone bazę danych z aktualizacjami, z dobra listą IP z terenu Polski - gdzie warto takie coś kupić?

czy tego typu bazy mają licencje tylko na jeden projekt czy można je wykorzystać na wiele projektów w ramach jednego zakupu?

konto usunięte

Temat: Wykrywanie kraju po IP

Robert B.:

blaaddd....
Bo bardzo czesto wyniki wyszukiwania ze strony US pokazuja sie wysoko na kazdym innym jezyku i dosc czesto ludzie nie sa swiadomi ze istnieje ta sama strona w ich jezyku.

Najwiekszy problem wystepuje w przypadku osob ktore szukaja z Indii albo z UK - badz co badz - ten sam jezyk a wyniki US w tym przypadku jeszcze czesciej zajmuja poczatek rankingu.

ps. tak strony sa w osobnych adresach i beda bardzo dobrze indexowane, aczkolwiek strona US zawsze bedzie bardziej popularna i bedzie miala wiekszy ruch - chodzi oto zeby go ukrasc :)

---

Co do samego rozwiazania, chyba skusze sie na postawienie swoich webservices na europe dedykowane tylko i sprawdzanie jezyka zrobie po stronie PHP, ale nie bazujac na IP tylko na headerach.Andrzej Winnicki edytował(a) ten post dnia 08.12.10 o godzinie 19:59

Następna dyskusja:

automatyczne wykrywanie wer...




Wyślij zaproszenie do