服务器
本文主要展示了Nginx是如何限制IP访问的。 内容简单易懂,请学习一下。 学习结束后一定会有收获。 以下,让编辑一起看看吧。
1、禁止所有的IP访问a1.htm a2.htm a3.htm这三个页面在location上这样写
location~~/( a1.htm|a2.htm|a3.htm ) $ {
deny all;
condition………;
}
2、只有指定的ip才能访问a1.htm a2.htm a3.htm这三个页面,其他ip的访问将被拒绝
location~~/( a1.htm|a2.htm|a3.htm ) $ {
阿洛10.0.0.2;
deny all;
condition………;
}
在此设置中,只有ip地址为10.0.0.2的主机才能访问这三个页面,但其他ip被拒绝。
其他情况可以用这个类推。
例如,必须指定只有名为8.8.8.8的ip才能访问info.php页面。 在nginx-server中添加以下配置即可
如果在8.8.8.8之外访问info.php页面,请返回403
在后面需要加上跳转目标。 proxy _ pass http://192.168.1.110:10480; 否则就会出现404错误。
location ~/info.php$ {
if ($remote_addr!=&; #039; 8.8.8.8&; #039; ) {
返回403;
}
proxy _ pass http://192.168.1.110:10480;
}
}
也可以将其添加到服务器代码中
location ~/info.php$ {
allow 8.8.8.8;
deny all;
condition………;
}
同样的效果
如何禁用ip或ip段?
这里是/usr/local/nginx/
首先创建封装ip的配置文件blockips.conf,然后vi blockips.conf编辑此文件并输入要封装在文件中的ip。
deny 1.2.3.4;
deny 91.212.45.0/24;
deny 91.212.65.0/24;
然后保存此文件,打开nginx.conf文件,并在http设置部分中添加以下行的设置:
include blockips.conf;
保存nginx.conf文件并测试当前的nginx配置文件是否有效。
/usr/local/nginx/sbin/nginx -t
如果构成没有问题,就会输出。
theconfigurationfile/usr/local/nginx/conf/nginx.confsyntaxisok
配置文件/usr/local/nginx/conf/nginx.conftestissuccessful
如果配置有问题,需要检查哪里有语法问题。 如果满意,则必须运行以下命令在nginx上重新加载配置文件:
/usr/local/nginx/sbin/nginx-s reload
仅允许特定的ip访问页或禁止特定的ip访问页
server_name es.mila66.com;
位置/{
include /etx/nginx/all/ip.conf;
deny all;
ip.conf中的文件格式:
阿洛192.168.1.11;
阿洛192.168.1.12;
这将确保只有部分ip可以访问页面。
如果要禁止某些IP访问,只需进行以下修改: 把allow改成deny就行了。
server_name es.mila66.com;
位置/{
include /etx/nginx/all/ip.conf;
allow all;
ip.conf中的文件格式:
deny 192.168.1.11;
deny 192.168.1.12;
nginx -s reload
重新启动服务器就可以了
以上是关于Nginx如何限制对IP部分页面的访问的内容。 如果你们学到了知识或技能,可以将其分享给更多的人看。
详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn