设为首页 收藏本站
查看: 1766|回复: 0

[经验分享] nginx增加GeoIP模块

[复制链接]

尚未签到

发表于 2018-11-10 06:35:35 | 显示全部楼层 |阅读模式
  Linux安装GeoIP
  附件地址:链接: https://pan.baidu.com/s/1dFl1zZN 密码: x37s
  ./configure
  make
  make install
  如果原已经安装好的nginx,现在需要添加一个未被编译安装的模块
  1.nginx -V 可以查看原来编译时都带了哪些参数
  原来的参数:
  –prefix=/app/nginx
  添加后的参数:
  ./configure –prefix=/app/nginx –with-http_geoip_module
  2.编译
  make (千万不要make install,否则就是覆盖安装了)
  3.备份原有./nginx
  4.把编译完的nginx(在安装目录的objs文件夹下)二进制文件,复制到/usr/local/nginx/sbin/
  cp -rf ./objs/nginx /app/nginx/sbin/
  5../nginx -V 测试成功
  在操作过程中遇到错误:
  /usr/local/nginx/sbin/nginx:
  error while loading shared libraries: libGeoIP.so.1: cannot open shared object file: No such file or directory
  解决方案:
  查看一下类库路径
  ldd /usr/local/nginx/sbin/nginx
  结果:
  这里写图片描述
  ln -s /usr/local/lib/libGeoIP.so* /lib64/
  ldconfig
  /usr/local/nginx/sbin/nginx -V 牛逼解决
  附加个使用说明:
  http {
  ...
  geoip_city    /var/GeoIP/GeoLiteCity.dat;#geoip的库文件
  #handler中可以接收header中的值(Geo-City的key 等)
  proxy_set_header    Geo-Country-Code $geoip_city_country_code;
  proxy_set_header    Geo-Region $geoip_region;
  proxy_set_header    Geo-City $geoip_city;
  proxy_set_header    Geo-Postal-Code $geoip_postal_code;
  proxy_set_header    Geo-Continent-Code $geoip_city_continent_code;
  proxy_set_header    Geo-Latitude $geoip_latitude;
  proxy_set_header    Geo-longitude $geoip_longitude;
  ...
  server{
  ...
  #下面代码可以放到 location模块下
  add_header geoip_city $geoip_city;
  add_header geoip_city_country_code $geoip_city_country_code;
  add_header geoip_region $geoip_region;
  add_header geoip_postal_code $geoip_postal_code;
  add_header geoip_city_continent_code $geoip_city_continent_code;
  add_header geoip_latitude $geoip_latitude;
  add_header geoip_longitude $geoip_longitude;
  ...
  }
  }
  ·$geoip_country_code - 两个字母的国家代码,如:"RU", "US"。
  ·$geoip_country_code3 - 三个字母的国家代码,如:"RUS", "USA"。
  ·$geoip_country_name - 国家的完整名称,如:"Russian Federation", "United States"(如果可用)。
  ·$geoip_region - 地区的名称(类似于省,地区,州,行政区,联邦土地等),如:"Moscow City", "DC"(如果可用)。
  ·$geoip_city - 城市名称,如"Moscow", "Washington"(如果可用)。
  ·$geoip_postal_code - 邮政编码(如果可用)。
  ·$geoip_city_continent_code(如果可用)。
  ·$geoip_latitude - 所在维度(如果可用)。
  ·$geoip_longitude - 所在经度(如果可用)。
  附件:
  GeoLiteCity.dat
  及省市区字典sql
  https://pan.baidu.com/s/1o8B73cQ
  附一篇不错的文章
  http://www.52os.net/articles/configure-nginx-using-geoip-allow-whitelist.html


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-632979-1-1.html 上篇帖子: Nginx1.14.0 编译安装 下篇帖子: nginx配置多端口转发
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表