Nginx 禁止IP访问 只允许域名访问

我们在使用的时候会遇到很多的恶意IP攻击,这个时候就要用到Nginx 禁止IP访问了。下面我们就先看看Nginx的默认虚拟主机在用户通过IP访问,或者通过未设置的域名访问(比如有人把他自己的域名指向了你的ip)的时候生效最关键的一点是,在server的设置里面添加这一行:

listen 80 default; 

后面的default参数表示这个是默认虚拟主机。
Nginx 禁止IP访问这个设置非常有用。

比如别人通过IP或者未知域名访问你的网站的时候,你希望禁止显示任何有效内容,可以给他返回500。目前国内很多机房都要求网站主关闭空主机头,防止未备案的域名指向过来造成麻烦。

简单直接的修改方法,则可以修改nginx.conf 文件:

...
server {
listen 80;
server_name www.nbu.edu.cn;  #这里是你自己指定的域名
...
}

#直接禁止IP地址访问
server {
listen 80 default_server;
server_name _;
return 403;
}

上述方法存在一个问题,IP虽然不能访问,但是主url网址可能也会访问不了,或者访问为默认的index,例如:

www.nbu.edu.cn

解决的方法:

server
  { 
     listen 80 default;
     server_name _;
     server_name www.edu.nbu.cn;
      return 500;
  }

加入该服务器名称,将域名也放进去,表示该域名不可以通过IP地址访问,这样就完成了,如有问题,请留言,谢谢!

注意:前面的default_server声明需要删除,否则回报错:
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值