如果在我们的VPS、服务器中需要针对某个IP或者某个IP段屏蔽,直接可以在Nginx和Apache规则中添加,这样的用法经常也有用到的,比如不让某个用户IP地址访问或者蜘蛛爬信息,甚至有些采集、镜像IP地址屏蔽掉需要用到。虽然目前还没有用到这样的功能,既然有网友提到就先记录下来,后面如果有需要用到的可以直接使用。
第一、Apache环境
如果我们服务器是Apache环境,那直接在当前根目录中的.htaccess文件添加下面的文件。
order allow,deny
deny from 220.116.0.0 # 屏蔽某个IP
deny from 220.116.0.0/14 #屏蔽IP段
allow from all
直接添加到我们根目录的.htaccess文件中,立即生效无需重启。
第二、Nginx环境
Nginx稍微有些不同,直接需要用一个屏蔽IP列表文件(blockip.conf),然后添加屏蔽IP和IP段。
deny 220.116.0.0; //屏蔽某个IP
deny 220.116.0.0/14; //屏蔽IP段
然后编辑服务器nginx.conf配置文件
include blockip.conf;
这个文件可以在http{} , server{} 中添加,但需要注意的就是相对路径,我们可以将blockip.conf;放到与Nginx.conf文件一个目录中。当然,我们也可以针对当前网站的conf文件屏蔽单一网站IP。
最后,重启Nginx即可生效。