加入yum的更新源

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1

安裝Geo-Moudules

yum -y install geoip-devel nginx-module-geoip -y
檢查nginx底下是否有這兩支檔案
ls /etc/nginx/modules/ngx_http_geoip_module.so
ls /etc/nginx/modules/ngx_stream_geoip_module.so

修改nginx.conf

load_module /etc/nginx/modules/ngx_http_geoip_module.so;
load_module /etc/nginx/modules/ngx_stream_geoip_module.so;

http {

geo $allow_whitelist {
        default 0;
        include /etc/nginx/conf.d/whitelist-geoallow;
    }

}

修改conf.d/default.conf

if ($allow_whitelist = 0) {return 401;}

 error_page 403 @error;

  
    error_page 405 @maintenance;

    location @maintenance {

        rewrite ^(.*)$ http://api.test.com/ break;

    }


  location @error {
                root /etc/nginx/conf.d/html/error/;
                try_files $uri /401.json =401;
                add_header Cache-Control no-cache;
    }

新增檔案conf.d/whitelist-geoallow

#1代表允許 0代表封鎖
123.123.123.123 1; 
221.221.221.221 1;

By tony

自由軟體愛好者~喜歡不斷的思考各種問題,有新的事物都會想去學習嘗試 做實驗並熱衷研究 沒有所謂頂天的技術 只有謙虛及不斷的學習 精進專業,本站主要以分享系統及網路相關知識、資源而建立。 Github http://stnet253.github.io

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料