Nginx和GeoIP模塊讀取IP所在的地域信息方法
Linux安裝GeoIP
yum install nginx-module-geoip
http_geoip_module使用場(chǎng)景
一、區(qū)別國(guó)內(nèi)外作HTTP訪問(wèn)規(guī)則
二、區(qū)別國(guó)內(nèi)城市地域作HTTP訪問(wèn)規(guī)則
yum 安裝好后找到安裝的模塊文件
如果nginx是用yun安裝的一般是安裝到 /etc/nginx/modules/目錄下
注意:如果nginx不是yum安裝的而是源碼編譯安裝的需要從新安裝編譯一次nginx加上此模塊,然后就不用手動(dòng)加入此模塊了。
手動(dòng)加入模塊
在nginx.conf配置文件的頭部載入模塊和http是同一個(gè)級(jí)別的
load_module "modules/ngx_http_geoip_module.so"; load_module "modules/ngx_stream_geoip_module.so";
因?yàn)镚eoIP是基于MaxMind 提供了數(shù)據(jù)庫(kù)文件來(lái)讀取地域信息的所以需要下載ip的地域文件。
這個(gè)數(shù)據(jù)庫(kù)是二進(jìn)制的,不能用文本編輯器打開(kāi),需要上面的 GeoIP 庫(kù)來(lái)讀取。
wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz #國(guó)家的地域IP wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz #城市的地域IP
然后解壓
load_module "modules/ngx_http_geoip_module.so"; load_module "modules/ngx_stream_geoip_module.so"; ....... http{ geoip_country /etc/nginx/geoip/GeoIP.dat; #加載國(guó)家IP geoip_city /etc/nginx/geoip/GeoLiteCity.dat; #加載城市IP ......... server { ...... location / { #判斷如果不是中國(guó)的就返回403; if ($geoip_country_code != CN) { return 403; } } #返回國(guó)家城市信息 location /myip { default_type text/plain; return 200 "$remote_addr $geoip_country_name $geoip_country_code $geoip_city"; } .... } }
然后訪問(wèn) 你的IP地址/myip 就可以返回IP所在的國(guó)家城市信息了。
以上這篇Nginx和GeoIP模塊讀取IP所在的地域信息方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用nginx緩存服務(wù)器上靜態(tài)文件的設(shè)置方法
這篇文章主要介紹了使用nginx緩存服務(wù)器上的靜態(tài)文件,文中給大家提到了nginx緩存的優(yōu)點(diǎn)及設(shè)置方法,通過(guò)實(shí)例相結(jié)合的形式給大家介紹的非常詳細(xì),需要的朋友可以參考下2018-05-05Nginx常用配置以及代理轉(zhuǎn)發(fā)操作詳解
這篇文章主要給大家介紹了關(guān)于Nginx常用配置以及代理轉(zhuǎn)發(fā)的相關(guān)資料,nginx一般被用來(lái)做反向代理,將請(qǐng)求轉(zhuǎn)發(fā)到應(yīng)用服務(wù)器上,比如tomcat的應(yīng)用,需要的朋友可以參考下2023-09-09Nginx流量拷貝ngx_http_mirror_module模塊使用方法詳解
這篇文章主要介紹了Nginx流量拷貝,Nginx專(zhuān)門(mén)提供了ngx_http_mirror_module模塊,用來(lái)實(shí)現(xiàn)流量拷貝。將生產(chǎn)環(huán)境的流量拷貝到預(yù)上線環(huán)境或測(cè)試環(huán)境2022-04-04聊聊配置?Nginx?訪問(wèn)與錯(cuò)誤日志的問(wèn)題
這篇文章主要介紹了配置?Nginx?訪問(wèn)與錯(cuò)誤日志,Nginx是一個(gè)開(kāi)放源代碼的高性能HTTP和反向代理服務(wù)器,負(fù)責(zé)處理Internet上某些最大站點(diǎn)的負(fù)載,對(duì)Nginx?錯(cuò)誤日志相關(guān)知識(shí)感興趣的朋友一起看看吧2022-05-05關(guān)于多級(jí)緩存使用(nginx本地緩存、JVM進(jìn)程緩存、redis緩存)
這篇文章主要介紹了關(guān)于多級(jí)緩存使用(nginx本地緩存、JVM進(jìn)程緩存、redis緩存),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08使用Nginx搭建流媒體服務(wù)器實(shí)現(xiàn)直播功能
這篇文章主要介紹了使用Nginx搭建流媒體服務(wù)器實(shí)現(xiàn)直播功能,本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07