通过Nginx来实现禁止国外IP访问网站( 二 )


通过Nginx来实现禁止国外IP访问网站

文章插图
 
在 server 中的 location 下 添加 条件
如果满足IP 是国外IP 就 执行下面的return 动作,我这里定义了3种, 注释了其中两个 。
当访问IP 是国外IP ,直接返回404
if ($allowed_country = yes) {# return https://www.baidu.com;# return /home/japan;return 404;}
通过Nginx来实现禁止国外IP访问网站

文章插图
 
修改完毕后,检测下配置文件,重新加载下 nginx
[root@fxkj ~]# /usr/local/nginx/sbin/nginx -tnginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful[roo@fxkj ~]# /usr/local/nginx/sbin/nginx -s reload 
7、模拟测试验证
使用海外节点的服务器去访问网站
这里我的IP 是 来自于韩国
通过Nginx来实现禁止国外IP访问网站

文章插图
 
可以看到访问网站报错 404 Not Found
通过Nginx来实现禁止国外IP访问网站

文章插图
 
我们再来看下nginx 的访问日志
"13.125.1.194 - - [14/Aug/2020:16:15:51 +0800] "GET /favicon.ico HTTP/1.1" 404 548 "https://www.fxkjnj.com/" "Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/84.0.4147.125 Safari/537.36"
通过Nginx来实现禁止国外IP访问网站

文章插图
 
到此 我们通过Nginx来实现禁止国外IP访问网站 就结束了
欢迎大家留言评论

【通过Nginx来实现禁止国外IP访问网站】


推荐阅读