在nginx中使用geoip做区域限制的方法

2025-05-26 0 81

该博客为工作笔记

环境:

nginx version: nginx/1.14.0

centos version: centos7

需求如下:

通过IP区别国内或国外,从而跳转到不同的页面,最终用nginx的第三方module:geoip来实现,这就不说它的优势了,网上很多解释,下面看怎么配置

我的系统中是配置了nignx.repo的,我直接用yum来安装了geoip模块,没有用添加模块重编的方式

?

1
yum install nginx-module-geoip

下载geoip的数据库文件

?

1

2

3

4

5

6

7

8

9

10

11

12

13
cd /etc/nginx

mkdir geoipdat

cd geoipdat

下载

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

解压

gunzip GeoIP.dat.gz

gunzip GeoLiteCity.dat.gz

根据需求配置nginx

首先在nginx.conf中加载geoip的库,配置如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34
load_module "modules/ngx_http_geoip_module.so";

load_module "modules/ngx_stream_geoip_module.so";

user nginx;

worker_processes 1;

error_log /var/log/nginx/error.log warn;

pid /var/run/nginx.pid;

events {

worker_connections 1024;

}

http {

include /etc/nginx/mime.types;

default_type application/octet-stream;

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;

sendfile on;

#tcp_nopush on;

keepalive_timeout 65;

#gzip on;

include /etc/nginx/conf.d/*.conf;

}

配置虚拟主机如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
geoip_country /etc/nginx/geoipdat/GeoIP.dat;

geoip_city /etc/nginx/geoipdat/GeoLiteCity.dat;

server {

listen 80;

server_name localhost;

location / {

root /opt;

if ($geoip_country_code = CN){

rewrite (.*) /zh$1 break;

}

rewrite (.*) /en$1 break;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root /usr/share/nginx/html;

}

}

opt目录如下

?

1

2

3

4

5

6

7
[root@VM_0_15_centos opt]# tree

.

|

└── en

│ └── index.html

└── zh

└── index.html

上面只是简单配置一下。。。。

以上这篇在nginx中使用geoip区域限制的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持快网idc。

原文链接:https://blog.csdn.net/guoqianqian5812/article/details/82787658

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 在nginx中使用geoip做区域限制的方法 https://www.kuaiidc.com/52938.html

相关文章

发表评论
暂无评论