MaxMind GeoIP 在服务器之间是不同的(WordPress 插件)
Posted
技术标签:
【中文标题】MaxMind GeoIP 在服务器之间是不同的(WordPress 插件)【英文标题】:MaxMind GeoIP is different across servers (WordPress Plugin) 【发布时间】:2018-06-01 16:20:06 【问题描述】:我正在使用带有 lite DB 的 MaxMind GeoIP WordPress 插件。我有一个临时站点和一个生产站点。
在插件选项中,您可以点击“IP 测试” - 这应该会读取我的 IP 并显示我的位置。在暂存时,它会读取我的 IP 和正确的位置。在生产环境中,它会针对返回错误位置信息的私有 IP 地址进行测试。我怀疑这个 IP 是生产站点认为所有访问者流量的来源,因为它正在为所有用户返回错误数据。
实时站点托管在 Amazon EC2 上,但服务器 IP 与我的生产 GeoIP 认为所有访问者来自的幻象不同。
【问题讨论】:
发布您正在使用的插件会很有用。大概它会从 php 的 REMOTE_ADDR 中提取 IP,如果您的服务器位于某种代理后面,则可能会错误地填充该 IP。 【参考方案1】:事实证明,该站点在生产服务器上使用 Varnish CDN。幻象 IP 归他们所有,并通过它路由所有流量。当然,如果 GeoIP 被分流到“附近”节点,GeoIP 将无法工作。
【讨论】:
以上是关于MaxMind GeoIP 在服务器之间是不同的(WordPress 插件)的主要内容,如果未能解决你的问题,请参考以下文章
MaxMind 的 GeoIP2 java API 线程安全吗?
MaxMind GeoIP API:fseek() [function.fseek]:流不支持在 geoip.inc 中查找
无法下载 GeoIP 数据 - Nginx >> GeoIP - 404 错误 - 正在解决 geolite.maxmind.com (geolite.maxmind.com)