如何准确确定访问我网站的位置?

时间:2009-02-26 17:41:21

标签: web-services web-applications geolocation

我需要一种一致且可靠的方法来确定访问我网站的计算机的位置(州/省,国家/地区等),使用以下任何一种方法:

  • PHP
  • 的JavaScript
  • MySQL的
  • 任何网络服务
  • 我没有想过的东西?

正在寻找一个锁定的第三方统计程序,例如Google Analytics。它已经在使用并且做了很多令人惊奇的事情,但我需要对信息进行代码级访问。

理想的解决方案应该允许我提供所需的任何信息(例如IP地址)并准确地获取尽可能多的关于访问的信息。获得原产国是最低要求,但州,纬度和经度,城市等额外费用将是不错的。

澄清:我需要能够在PHP代码中定期使用这些信息。不只是在某处查看它。

4 个答案:

答案 0 :(得分:7)

它被称为“地理定位”,it's been covered before

答案 1 :(得分:1)

如果你的意思是100%的可靠性,那就不存在了。但是,如果可靠意味着小于100%,则可以使用MaxMind进行地理定位。他们有一个开源版本:

http://www.maxmind.com/app/geolitecity

如果您需要更准确的结果,还有付费服务。

答案 2 :(得分:0)

Hostip.info提供免费的IP GeoLookup API,供您的应用程序使用。但是,由于代理的简易性,IP查找不会保持一致或可靠。从代理服务器后面访问您网站的任何人都可能会被错误地报告。

但是,使用IP可以做到最好。

答案 3 :(得分:0)

仅适用于乡村地区。 Geoip libraries很有用。

Linux中甚至还有一个命令行程序。

您还可以使用PHP脚本获取环境变量。

这是一段Perl脚本,我写了一段时间回到display变量。没什么好看的。

#!/usr/bin/perl

print 'Content-type: text/HTML' . "\n\n";
print "<body><center>";
print "<table border=1>";
print '<tr><td>' . $_ . "<td>" . $ENV{$_} . "<br>\n" foreach sort (keys(%ENV)) ;

您可以看到浏览器