如何检测访问者的国家/地区?

IT技术 php javascript geolocation location
2021-03-09 14:31:04

可能的重复:
IP 地址的位置检测技术

对于我们的网站,重要的是要知道我们的访问者来自哪个国家。

我想我的问题的最佳答案是当前浏览器系统的简单地理位置功能,它只询问用户是否允许网站查看他的地理位置:http : //dev.w3.org/geo/api/规范-source.html

但我不想打扰访问者的问题,我很想自动检测访问者的位置(国家应该足够了。)

做到这一点的最佳方法是什么?- 什么 ip 数据库会是最好的?- 浏览器标题是否足够可信以检测他的国家?(en-us en-en en-ca?) 最好的解决方案是什么?

4个回答

NetImpact提供通过IP地理定位查找免费的API,ProgrammableWeb也有一个综述的GeoIP查找供应商。这涉及您的应用程序完成 API 调用时的少量延迟(除非您的应用程序可以使用非阻塞调用),但这是检测访问者原籍国的干扰最少的方式。

NetImpact 不会加密您的密码,并会在您注册时以明文形式将其发送到您的电子邮件中。
2021-05-05 14:31:04
NetImpact 效果很好,我刚试过。设置和运行仅需 1 分钟。
2021-05-09 14:31:04

浏览器标题只是告诉您用户希望看到什么语言去日本出差的说西班牙语的人可能希望看到西班牙语网站。

我认为您可以使用反向 IP 服务进行猜测,但如果是出于商业目的,我认为您必须要求用户告诉您。

与地理位置类似:计算机的物理位置可能与浏览网站的用户的需求相关,也可能不相关。

在日本的西班牙语是个例外。制作一个网站,甚至是商业网站,默认情况下是日语,在屏幕上有一个更改选项,将适合大多数访问者。
2021-04-24 14:31:04
在日本讲西班牙语的人也不例外。人们旅行。忽略语言设置(=用户想要什么)并将语言推到他的脸上是非常烦人的,如果不是冒犯性的话。
2021-04-29 14:31:04
如果浏览器向您发送了一个Accept-Language标头,表明用户首先需要卡斯蒂利亚西班牙语,为什么要覆盖它(如果您已经获得了该语言环境)?
2021-05-01 14:31:04
不幸不再存在
2021-04-24 14:31:04

http://www.iplocationtools.com/samples.html也提供了一套很好的 api 来做到这一点。我以前用过他们的系统,他们非常可靠。