zoukankan      html  css  js  c++  java
  • nginx之Geoip读取地域信息模块

    1 geoip_module模块

    基于IP地址匹配MaxMind GeolP二进制文件,读取IP所在地域信息。

    yum install nginx-module-geoip

    geoip2已经有了,安装另寻

    2、http_geoip_module使用

    一、区别国内外作HTTP访问规则

    二、区别国内城市地域作HTTP访问规则

    用到的ip数据库

    链接:https://pan.baidu.com/s/1KcFhouFhP7jQOEZaZutMtw  提取码:okjp


    vim nginx.conf
    load_module modules/ngx_http_geoip_module.so;   #导入模块
    load_module modules/ngx_stream_geoip_module.so;
    ​
    user nginx;
    worker_processes auto;
    error_log /var/log/nginx/error.log;
    pid /run/nginx.pid;
    include /usr/share/nginx/modules/*.conf;
    events {
        worker_connections 1024;
    }
    http {
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
        access_log  /var/log/nginx/access.log  main;
        include             /etc/nginx/mime.types;
        default_type        application/octet-stream;
    ​
        include /etc/nginx/conf.d/cp5/*.conf;
    }
    ​
    
    cat conf.d/cp5/test_geoip.conf
    geoip_country /etc/nginx/geoip/GeoIP.dat;       #
    geoip_city /etc/nginx/geoip/GeoLiteCity.dat;
    
    # geoip_country /tmp/geoip/GeoLite2-Country/GeoLite2-Country.mmdb;
    # geoip_city /tmp/geoip/GeoLite2-City/GeoLite2-City.mmdb;
    
    server {
        listen       80;
        server_name  web01.fadewalk.com;​
    
        location / {
            if ($geoip_country_code != CN) {
                return 403;
            }
            root   /usr/share/nginx/html;
            index  index.html index.htm;
        }
    
       location /myip {
            default_type text/plain;
            return 200 "$remote_addr $geoip_country_name $geoip_country_code $geoip_city";
       }
    
    }
    


    测试

    b42ff37f-ea3b-49fd-9619-d71bae6126ef

  • 相关阅读:
    771. Jewels and Stones
    706. Design HashMap
    811. Subdomain Visit Count
    733. Flood Fill
    117. Populating Next Right Pointers in Each Node II
    250. Count Univalue Subtrees
    94. Binary Tree Inorder Traversal
    116. Populating Next Right Pointers in Each Node
    285. Inorder Successor in BST
    292. Nim Game Java Solutin
  • 原文地址:https://www.cnblogs.com/wenyule/p/11071800.html
Copyright © 2011-2022 走看看