NGINX 解析一个未配置的域,为什么?
NGINX resolving a non configured domain, why?
我有一台服务器 运行 位于:http://localhost:8080
我正在配置示例 NGINX
服务器。
我从网上复制了以下配置:
# user nobody;
worker_processes 1;
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# gzip on;
server
{
listen 80;
server_name mydomain01.com www.mydomain01.com;
location /
{
proxy_pass http://localhost:8080;
include "../proxy_params.conf";
}
}
}
在主机文件中,我只有以下条目:
127.0.0.1 mydomain01.com
127.0.0.1 www.mydomain01.com;
127.0.0.1 mydomain02.com
127.0.0.1 www.mydomain02.com;
当我访问:http://mydomain01.com 我得到的内容与在:http://localhost:8080
我的问题是:
为什么当我去:http://mydomain02.com 我也得到了与在:http://localhost:8080?
上相同的内容
我认为我不应该获取该内容,因为最后一个域不在 NGINX
配置中。
我上面的配置有误吗?
谢谢!
nginx
always 包含一个 默认服务器 ,它将处理与 [=11] 不匹配的服务器名称请求=] 指令。如果您没有定义 default_server
,nginx
将使用第一个 server
块和匹配的 location
。有关详细信息,请参阅 this document。
我有一台服务器 运行 位于:http://localhost:8080
我正在配置示例 NGINX
服务器。
我从网上复制了以下配置:
# user nobody;
worker_processes 1;
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# gzip on;
server
{
listen 80;
server_name mydomain01.com www.mydomain01.com;
location /
{
proxy_pass http://localhost:8080;
include "../proxy_params.conf";
}
}
}
在主机文件中,我只有以下条目:
127.0.0.1 mydomain01.com
127.0.0.1 www.mydomain01.com;
127.0.0.1 mydomain02.com
127.0.0.1 www.mydomain02.com;
当我访问:http://mydomain01.com 我得到的内容与在:http://localhost:8080
我的问题是:
为什么当我去:http://mydomain02.com 我也得到了与在:http://localhost:8080?
上相同的内容我认为我不应该获取该内容,因为最后一个域不在 NGINX
配置中。
我上面的配置有误吗?
谢谢!
nginx
always 包含一个 默认服务器 ,它将处理与 [=11] 不匹配的服务器名称请求=] 指令。如果您没有定义 default_server
,nginx
将使用第一个 server
块和匹配的 location
。有关详细信息,请参阅 this document。