views:

145

answers:

5

I am using an IP location lookup to display localised prices to customers depending on whether they are visiting from the UK, US or general EU and defaulting to the US price if the location can't be determined.

I could easily force the system to believe I'm from a specific country for testing but still there is no way of knowing for sure that it's displaying correctly when a visitor from abroad accesses my site. Is the use of some proxy the only viable way of testing a site like this? If so how would I go about tracking down one that I can use to test my site from various countries of origin?

A: 

If the website is indexed in Google's cache, you can visit the google with the proper URL address. ex. http://www.google.co.uk/

And see if it's displaying properly in the cache.

kylex
If he is testing the site right now, it doesnt make sense to wait for the google cache to roll around in a day or two every time he makes a change. The google cache is not instantaneous.
Karl
+1  A: 

This is not about how to test, but rather how you identify your visitors.

Instead of using IP-lookup to determine their geographical location, you should instead grab the information about the locale they use from the useragent string.

F.instance, I'm a norwegian, and when I go to useragent.org I see that my browser sends "nb-NO" as the language my machine uses.

You can easily use that to customize currency, dates etc on your site.

Frode Lillerud
This might cause a problem if a user in North America is using a spanish language browser and starts seeing prices given in Euros, the prices would not only be translated, but they should be different due to shipping rates.
Karl
I did not know people in the USA speak any language but English. :D Anyway, shouldn't that user use some language code such as "es-US" then? That's what the country part in there is thought for after all. :)
hangy
+3  A: 

You should be able to achieve that by using proxies. http://www.proxy4free.com/page1.html has a bunch. That site just came from a Google search; I've never used proxies like this before though, so there may be better sites out there.

DisgruntledGoat
A: 

@Frode: Checking system locale in iseragent string might be misleading. I go to Canada, and set my system locale as French. So it might show the user EU prices as opposed to showing US price. Many such cases are possible where locale wont give accurate info about the end users desired "price class" in this particular application mentioned.

=AD

goldenmean
Wouldn't that be Canadian French with a language code such as fr_CA then?
hangy
A: 

If you want to use geo-ip location to detect a user's language, using a proxy probably is the best way to do so.

There are a lot of lists of open proxies on the web, mostly listed with the countries. Google has quite a lot of search results on this topic. Of the top results, I have used SamAir to test some stuff before.

Searching for a working open proxy with an acceptable speed in the correct country can be a tedious task. Also keep in mind that you should not use any these proxy servers to submit any sensitive data, because you never know who runs them. This could be a kinda trustworthy ISP (ie. not from GB ;D), a honeypot to collect data, or an illegal open proxy hosted by some trojan.

hangy