我正在试图弄清楚如何在AWS上安装和使用GeoIP库(Elastic Beanstalk).据我所知,EB有一个"短暂的文件系统",但我可以在S3中存储CeoCity二进制文件......但是MaxMind C库呢?有没有人配置EB使用MaxMind的API?
(我的堆栈基于Python/Django)
amazon-s3 amazon-web-services geoip maxmind amazon-elastic-beanstalk
我正在使用带有mongo analytics db的sitecore 7.5版本,我需要根据Visitor的Geo IP覆盖上下文语言.
但每当我在httpRequestBegin管道上调用我的文件时,当前Sitecore.analytics.Tracker.Current为空.
任何人都可以请求帮助,我真的需要找到解决方案吗?
我想知道数据库GeoIP2比GeoLite2数据库更准确,当两个数据库都在本月的第一个星期二下载时.
是否只省略了一些ip范围以获得不太准确的数据集?
有什么办法,如何获得美国国家缩写。(CA,VI,..)来自IP?
该库仅向我返回都会区号和邮政编码,是否有任何查找表可用于状态转换器?或如何提取状态?
当使用Nginx配置Max Mind时(使用类似的东西proxy_set_header GEOIP_CITY $geoip_city;),当它有重音符号时(如蒙特利尔),我会得到城市名称的编码问题.
我到处搜索,我找不到强制utf-8编码的nginx开关.我错过了什么?
我试着city.force_encoding('iso-8859-1').encode('utf-8')在红宝石身边,但没有骰子.
谢谢!
Maxmind有两个免费的GeoLite2 cvs文件,我们可以用它来查找与IP地址范围相关的位置.我想在SQL Server中创建一个使用导入的表([GeoLite2_City_Blocks]和[GeoLite2_City_Locations])的存储过程,获取在IP地址中传递的varchar(45)字符串并返回与该IP地址关联的位置.我原本以为网上会有相关的T-SQL代码,但我找不到它.
我查看了在SQL中查询GeoLite2国家CSV,但我根本不明白Prefix_Length(在Blocks表中称为Network_mask_Length),是或是.如果它们与CIDR前缀相同(请参阅:http://en.wikipedia.org/wiki/IPv6_subnetting_reference),我会更加困惑,因为Network_mask_Length可能是118,119或任何其他未显示的数字那个维基百科页面.
我已经看到一个网页在SQL Server中讨论IPv6,建议使用零进行填充以进行比较.我想不能简单地查询免费的GeoLite2而不至少在该表的最终IP地址中添加一个额外的列?
我想我可以从IPv4地址前面删除":: ffff:",如果这是正确的说法.但我仍然没有得到如何将network_mask_length(前缀)字段转换为我理解的内容.然后填零IPv6地址,但后来我仍然不知道该前缀是什么.
我的问题是:
我正在尝试使用免费的MaxMind GeoLite2代码来确定特定IP地址的国家/地区.
我正在使用此处发布的无Composer方法: 通过Maxmind GeoLite2免费获取用户城市的本地化名称
我确信它非常简单,但我无法弄清楚如何实际传递IP地址并让它返回国家.
在$reader = new Reader...我拥有的行之后$place = $reader->country('##.###.##.###');(其中#是实际的IP地址编号)并且它不起作用.我尝试用"城市"取代"乡村",但也没有用.我确定它很简单,我只是不确定我需要使用什么参数才能让国家返回.
错误日志中显示的错误是'PHP致命错误:调用未定义的方法MaxMind\Db\Reader :: city()<<< path to benchmark.php >>>)'
任何想法/建议将不胜感激.
我的要求是通过设备 Ip 获取国家/地区名称。没有任何 WEB/API 调用。我用谷歌搜索得很好,但我不能得出任何结论。我们有很好的免费服务 MaxMind,但它提供 CSV 格式以及非常大的文件大小。我们有什么建议的方法吗?我们不应该使用基于位置的服务,例如 GPS/网络提供商..?
请帮我解决这个问题..
我正在尝试在我的Java应用程序中包含一个Maxmind数据库.我使用的数据库是最新版本的GeoLite2-City.mmdb.
当我将数据库文件放入项目(src/main/resources/GeoLite2-City.mmdb)并运行项目时,我可以使用数据库com.maxmind.geoip2.DatabaseReader并执行IP地址查找.
但是,一旦我编译项目并创建包含数据库的jar文件,我就无法读取文件中的数据库,我得到了异常:
com.maxmind.db.InvalidDatabaseException: Could not find a MaxMind DB metadata marker in this file (<InputStream>). Is this a valid MaxMind DB file?
解压缩.jar文件并查看mmdb文件我可以看到文件的大小已从38Mb更改为59Mb,我猜这是抛出异常的原因.
有没有人知道在.jar中打包这个文件的方法,以便它可以使用?我已经尝试将原始.gz文件添加到包中,然后解压缩然后加载数据库,但这也不起作用.
谢谢
我已经成功地将 NGINXngx_http_geoip_module与 MaxMind 的 IP 数据库结合使用.dat,扩展名:
http {
geoip_country GeoIP.dat;
geoip_city GeoLiteCity.dat;
geoip_proxy 192.168.100.0/24;
geoip_proxy 2001:0db8::/32;
geoip_proxy_recursive on;
然而,.dat这是一种遗留格式。MaxMind 现在以二进制格式分发 IP 数据库.mmdb。
NGINX 是否像它一样ngx_http_geoip_module支持格式?.mmdb.dat