打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
使用Nginx限制客户地址请求访问

现状说明:

目前应用需要限制个别IP访问平台的网站,网站使用的是Nginx,现在的具体要求如下:1.Nginx的所有站点都不允许x.x.x.x地址访问;2.针对某一个站点www.xxx.com限制xx.xx.xx.xx地址访问;3.针对某一个站点www.xxx.com的某个路径限制x.xx.xx.xx地址访问12345

分析说明

1.针对所有站点都不允许访问的话,需要做全局设置,配置在主配置文件中;2.针对某一个站点的话,只需要在对应站点的conf文件中配置即可;3.针对某个路径的话,只需要在对应站点的location里面配置即可1234

配置示例

1.所有站点统一限制
	vim nginx.conf
	allow x.x.x.x;允许x.x.x.x这个地址访问
	deny all;限制所有IP访问
	#:除了allow允许的IP外,剩下的全部禁止访问;其次一定是写在server{}外面的,针对全局生效的;2.针对单个站点限制
	vim www.xxx.conf
	server{
		server_name www.XXX.com;
	   location ~ /                 # 不是 ~ /\.
		 {
    		allow xx.xx.xx.xx;
    		deny all;
		 }
	}
	还可以:
	server{
		server_name www.XXX.com;
		allow xx.xx.xx.xx;
    	deny all;
	    location ~ /                 # 不是 ~ /\.
		 {
		 }
	}#:单站点统一限制IP,需要将以上配置写在对应域名配置的server{}内3.针对某个项目路径进行设置
	vim xxx.com
	location ^~ /process-bar/ 
	{
 		 allow x.xx.xx.xx;
 		 deny all;
	}12345678910111213141516171819202122232425262728293031323334

修改保存后重载nginx服务service nginx reload。如果生效该IP访问网站会出现403 forbidden。

-------------------------------------------------------------------------------------------------------------------------
#封IP段比如从192.0.0.1到192.0.0.254的命令是
deny 192.0.0.0/24这其实就是把192.0.0.x这整个C端屏蔽了。

还有一种方法,在nginx的conf目录下面新建配置文件为blocksip.conf:

输入要屏蔽的地址deny 24.112.16.30; 保存一下。

在nginx的配置文件nginx.conf中加入:include blocksip.conf;

重启一下nginx的服务:service nginx reload或/usr/local/nginx/sbin/nginx -s reload 就可以生效了。

blocksip.conf:的格式还有许多种,可以配置只允许的IP访问或者IP段访问:
# block all ips
deny all;
# allow all ips
allow all;

如果你想实现这样的应用,除了几个IP外,其他全部拒绝,在ip.balcklist中这样写
allow 1.1.1.1;
allow 1.1.1.2;
deny all;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用PHP或.htaccess限制IP访问
阿里云如何屏蔽ip地址,拒绝访问网站
nginx禁止限制某个IP地址或网段访问服务器
无需公网IP 怎样远程访问内网设备
如何用Nginx代理MySQL连接,并限制可访问IP?
如何用 Nginx 代理 MySQL 连接,并限制可访问 IP?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服