转载地址:http://sjolzy.cn/GeoIP-PHP-version-use.html

GeoIP介绍:

什么是GepIP ?

所谓GeoIP,就是通过来访者的IP, 定位他的经纬度,国家/地区,省市,甚至街道等位置信息。这里面的技术不算难题,关键在于有个精准 的数据库。有了准确的数据源就奇货可居赚点小钱,可是发扬合作精神,集体贡献众人享用是我们追求的。

GeoIP如 何使用?
首先我们需要数据信息,所以先获取一个免费的数据库:http://sjolzy.cn/php/GeoIP/bak/GeoIP.dat.gz ,接着解压得到:GeoIP.dat, 然后就是对数据文件的按需操作,这边范例使用的是PHP。

GeoIP + PHP的使用
方法一:
下载 GeoIP 的 PHP 文件geoip.inc,保存为 geoip.inc.php
http://sjolzy.cn/php/GeoIP/bak/geoip.inc

php使用代码
include("geoip.inc.php");
// 打开数据文件 
$gi = geoip_open("GeoIP.dat",GEOIP_STANDARD);
// 获取国家代码 
$country_code = geoip_country_code_by_addr($gi, $_SERVER['REMOTE_ADDR']); 
echo "Your country code is: $country_code ";
// 获取国家名称 
$country_name = geoip_country_name_by_addr($gi, $_SERVER['REMOTE_ADDR']); 
echo "Your country name is: $country_name ";
// 关闭文件 
geoip_close($gi);
注:在本地测试的话因 为$_SERVER['REMOTE_ADDR']和$_SERVER['REMOTE_ADDR']可能是127.0.0.1,所 以输出的内容为空。可以自己带入IP测试

方法二:
把 GeoIP 安装成 PHP 扩展 
yum install GeoIP GeoIP-data GeoIP-devel

下载 GeoIP 数据库 
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
gzip -d GeoLiteCity.dat.gz
mv GeoLiteCity.dat /var/lib/GeoIP/GeoIPCity.dat

下载 GeoIP 的 PECL 扩展 
下载地址 http://pecl.php.net/package/geoip 
wget -c http://pecl.php.net/get/geoip-1.0.7.tgz
tar -zxvf geoip-1.0.7.tgz

安 装 GeoIP 的 PECL 扩展 
cd geoip-1.0.7
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-geoip
make
make install

在 php.ini 里加上 
extension=geoip.so

接着重启一下 php 就行了
现在,你可以使用 php 手册里的 GeoIP 部份函数了
http://cn.php.net/manual/en/book.geoip.php

GeoIP的使用 - PHP版相关推荐

  1. GeoIP的使用-C语言版

    0x00. 简介 GeoIP库可以根据IP地址(支持IPv4 和 IPv6), 定位该IP所在的 洲.经纬度.国家.省市.ASN 等信息. GeoIP目前已经升级到GeoIP2,GeoIP2有两个版本 ...

  2. 【lnmp+ELK+Nginx+GeoIP】超详细新版ELK8.5.0解析收集Nginx日志并实现数据可视化与IP地址地图可视化教程-2022年11月版

    超详细新版ELK8.5.0+lnmp1.9解析收集Nginx日志并实现数据可视化与IP地址地图可视化教程-2022年11月版 前言 1.基础环境和所需要的软件包 1.1服务器配置(仅供参考) 1.2 ...

  3. nginx应用geoip模块,实现不同地区访问不同页面的需求(实践版)

    https://www.52os.net/articles/configure-nginx-using-geoip-allow-whitelist.html       搞了几天没有搞定,这篇文章一下 ...

  4. 通过GeoIP获取ip所属地 (国家,城市,时区,邮编,经纬度等)

    来源: http://www.phpandstuff.com/articles/geoip-country-lookup-with-php GeoIP + PHP <?php//计时开始func ...

  5. Linux 防火墙安装包下载,IPFire 2.23 Core Update 138 发布下载,Linux开源防火墙发行版...

    IPFire项目发布了对其基于Linux的开源防火墙发行版的新更新,该更新带来了最新的软件更新以及大大改进和更快的服务质量(QoS). IPFire 2.23 Core Update 138现在可以下 ...

  6. Nginx安装配置(lua全模块、GEOIP、加入系统服务)---无坑安装

    nginx安装一般两种:A下载安装包安装.B直接yum在线安装 A:在线安装是最简便的,如果只需基本的web和转发服务就别往下看,直接[yum install nginx],少折腾,稳定才是王道. B ...

  7. geoip java api zh cn_通过GeoIP2分析访问者IP获取地理位置信息

    MaxMind GeoIP2 服务能识别互联网用户的地点位置与其他特征,应用广泛,包括个性化定制内容.诈欺检测.广告定向.网站流量分析.执行规定.地理目标定位.地理围栏定位 (geo-fencing) ...

  8. 手册上的GeoIP扩展详解,按手册整理了一遍

    手册中,"其它基本扩展->GeoIP",有一个GeoIP扩展,今天我们来研究下这个扩展: 简介: GeoIP扩展允许你查找IP地址的位置.可以借助GeoIP获取:城市,州,国 ...

  9. PHP 跟据用户IP获取所在国家高效解决方案(GEOIP)

    最近项目中有一个需求统计访客数据,为了保证效率.前端尽量轻量化,仅将访客原始请求信息不作任何处理直接写入消息队列.后端计划任务服务器监听消息队列,解析 user agent, ip 地址,处理结果写入 ...

最新文章

  1. perl---dbi,sqlite中文乱码
  2. 活动的批输入监控ENV
  3. ubun16.04+搜狗输入法
  4. 【.NET Core 3.0】小技巧 || 原生DI一对多注入
  5. Sequence Pair Weight
  6. mysql 不会联想字段_你有没有被MySQL的这个bug坑过?
  7. windows镜像_什么是windows镜像?什么是Ghost?它们有什么优缺点?
  8. python最长匹配_二分图最大匹配:匈牙利算法的python实现
  9. java如何制作简单的数组_【数据结构与算法】Java制作一个简单数组类
  10. 如何删除itunes中的ipa安装包
  11. validate简介及使用方法与默认的校验规则
  12. 泛微e-Bridge未授权文件读取漏洞复现
  13. 达朴汇联CEO张焱:从隐私计算出发,共建Web3.0
  14. “L3级”自动驾驶落地指导思想:高速辅助人,低速替代人
  15. 语句摘抄——第15周
  16. 关于数组名(arr)的理解
  17. 关于Remoting
  18. java多线程归并排序_并行计算实验-串、并行排序算法
  19. 广数928te_广数928te使用教材
  20. 环科跨考数一英一408经验帖

热门文章

  1. 挥手送别 2019,翘首期待 2020
  2. bitset类型, 标准库类型
  3. 单例模式的两种实现方式对比:DCL (double check idiom)双重检查 和 lazy initialization holder class(静态内部类)...
  4. day18——sql优化——绑定变量
  5. 《监控》再起风云,连同创作中的《监控2》成功牵手影视公司
  6. ORB-SLAM3 论文笔记
  7. C语言程序设计 细节总结(第8章 指针)
  8. Cartographer 数据集国内地址
  9. android手机播放pc音乐播放器,最强手机音乐播放器?Foobar2K安卓版体验
  10. 将字符型的数字转化为整型