设置方法:
找到nginx.conf配置文件,将即改为:
============================
server {
listen 80 ;
return 444;
}
============================
详细说明请看下文:
最近越来越有迹象表明,针对idc的监控将越来越严厉。甚至一些服务器上不存在的域名,只要有dns指向你的服务器,并且有访问,就会被“监管”。
对于我常用的nginx来说,即使是访问服务器上不存在的域名时,nginx也会返回一个出错页面“bad hostname”之类的。
解决方法是在nginx的配置文件中(nginx.conf)加入一个处理默认(就是不符合其他任何已有的vhost)server的项目:
server {
listen 80 default_server;
server_name _;
return 444;
}
# default_server 是 8.21+加入的参数,如果低于8.21 ,则可以注意将下面代码放在其他server项前面
server {
listen 80 ;
return 444;
}
这其中最关键的是 magic number 444。 444是nginx内置的错误代码。对我们来说 return 444 比 return 404还要好。因为 nginx 下即使return 404,也会有返回的header和一个包含错误信息的html body。但是return 444,服务器会立刻关闭连接,就好象服务不存在一样。