Nginx设置防止IP及非配置域名访问

早上来到公司,发现前端错误上报页面有一个非公司域名上报的错误,于是很纳闷为什么别人的网站会向我们的错误监控接口报错呢?然后访问了一下这个域名,发现打开的内容居然是公司站点。网上查找了一下‘’为什么别人的域名会指向自己的服务器‘’,得到的反馈大多是别人把 未备案的域名 解析到自己的服务器IP而导致服务器IP被封,也有一些是为了骗收录和钓鱼网站。出现这种情况的原因是没有关闭空主机头。
该怎么防止别人的域名能访问我们的网站呢,Nginx下关闭空主机头:

返回500或304

#设置IP或其它域名访问时返回500或304
server{
    listen 80 default;
    server_name _;  ##标示空主机头
    return 500;
}

或将流量引到自己的网站

#设置IP或其它域名访问时重定向到www.xxx.com
server{
    listen 80 default;
    server_name _;   ##标示空主机头
    rewrite ^(.*) http://www.xxx.com;
}

空主机似乎是IIS的概念,我的理解是这个配置是一个默认配置,类似于switch结构里的那个捡漏的default,总之就是没有定义的情况就使用这段配置。
经过这样的配置之后使用服务器IP或者非配置的域名访问时就会返回错误或被重定向了。

参考自:
Nginx 禁止IP访问 只允许域名访问
如何删除空主机头

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值