nginx的default_server指令可以定义默认的server去处理一些没有匹配到server_name的请求,如果没有显式定义,则会选取第一个定义的server作为default_server。
在了解到如上规则后,我们可以捕获未做绑定的域名访问或直接IP访问,做重定向到403页面等处理。
1、nginx隐式的defaultserver
很多人复制粘贴广泛传播server_name要设为&8217;,其实一毛钱的关系也没有。&8217;只是作为一个和业务域名无关的请求回收服务而已,如果我们线上的业务都是明确的业务域名访问,那泛解析造成的一些非业务域名或ip访问都会被这个sever回收处理。

2、显示的定义一个defaultserver
建议显示指定defaultserver,因为我们在配置虚拟主机或多业务时,会存有多个server配置文件,如果使用隐式方式选取第一个被载入的server作为defaultserver的话,我们还要时刻去确认谁是被第一个载入的&8230;
3、直接指定server_name为ip(只能禁止ip访问)
以上三种方式都可禁止ip直接访问,且1,2同时可以禁止未绑定域名的访问(比如你泛解析了主域名)。
小记:nginx批量载入配置conf时会按ascii排序载入,这就会以server_a.confserver_b.confserver_c.conf的顺序载入,如果没有生命default_server的话,那server_a会作为默认的server去处理未绑定域名/ip的请求。
本文来源:独立服务器--Nginx的default(nginxdefault_type)
本文地址:https://www.idcbaba.com/duli/4798.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



