关闭掉服务器上NGINX默认站点的方法

服务器 1878 0 2012-03-28

关闭掉服务器上NGINX默认站点的方法

设置方法:
找到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,服务器会立刻关闭连接,就好象服务不存在一样。

上一篇:lnmp去掉nginx上传目录的PHP执行权限

下一篇:502 bad gateway nginx 怎么办?

讨论数量:0

请先登录再发表讨论。 2024-04-24

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链