我有一个networking服务器与NginX和每个网站在不同的configuration文件。 我注意到,如果我有一个不存在的网站configuration(没有DNS名称或错误的设置)NginX只是redirect到我的其他网站之一。 总是相同的,所以不是随机的。 这个怎么用? 如果NginX应该提供的configuration不正确,NginX如何决定将其redirect到哪里?
简单的例子:如果我input服务器的IP地址到浏览器,我得到的特定页面加载。OFC我没有设置任何configuration服务的IP地址。 你知道我怎样才能改变NginX服务于其他的东西,或者可能会抛出一个错误? 哦,是的,关于这个
如果我去我的IP地址,没有日志文件logging任何东西。 显然,一个网站加载。
这是因为Nginx默认为第一个网站。 你可以select你想用default_server指令默认的那个。
我不希望Nginx响应任何域名,所以我这样做不发送任何回应 。
# This just prevents Nginx picking a random default server if it doesn't know which # server block to send a request to server { listen 80 default_server; server_name _; return 444; # This means "go away", effectively }
如果没有与server_name匹配的server块,则请求将通过其Listen指令中的default_server语句或定义的第一个server块(通常在从目录读取多个configuration文件时的字母表中的第一个)发送到server , 。
请参阅http://nginx.org/en/docs/http/request_processing.html和http://nginx.org/en/docs/http/server_names.htm