龙空技术网

Nginx 禁止国外国家或地区访问配置

郭子懂生活 767

前言:

眼前我们对“nginx带参数设置禁止访问”都比较珍视,姐妹们都想要剖析一些“nginx带参数设置禁止访问”的相关知识。那么小编在网络上收集了一些有关“nginx带参数设置禁止访问””的相关内容,希望大家能喜欢,同学们快快来学习一下吧!

准备工作

yum install libmaxminddb-devel -ywget  ngx_http_geoip2_module-3.4.zip

下载最新版本的GeoIP数据文件到服务器上

网站地址写说有营销嫌疑,会评论区里边发出来。

Nginx编译

yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel gd-develwget  -zxvf tengine-2.3.2.tar.gzcd tengine-2.3.2./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --sbin-path=/usr/sbin/nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_image_filter_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module --with-debug --with-http_realip_module --add-module=./modules/ngx_http_upstream_check_module/ --add-module=./modules/ngx_http_concat_module --add-module=./modules/ngx_http_sysguard_module --with-http_geoip_module --add-module=/root/ngx_http_geoip2_module-3.4make & make install
配置

修改nginx.conf文件,在 http 中添加 几行,定义数据库文件位置

geoip2 /root/GeoLite2-Country_20240102/GeoLite2-Country.mmdb {auto_reload 5m;$geoip2_data_country_code country iso_code;}map $geoip2_data_country_code $allowed_country {default yes;CN no;}

在 server 中的 location 下 添加 条件,当IP是国外地址是,返回404.

if ($allowed_country = yes) {return 404; }

修改完毕后, 检测下配置文件,重新加载下 nginx

nginx -s reload

标签: #nginx带参数设置禁止访问