Nginx 同端口多域名配置多站点问题

Nginx 同端口多域名配置多站点问题

nginx 下 conf 目录文件 nginx.conf 文件,如果有多个 server 的话,一定要 确保设置其中一个为 default_server, 这样如果 nginx 按照 server_name 匹配不到合适的 server 时,可以把请求转发给默认的 server 处理。

配置这个只需要在 nginx 的配置中配置两个 server 就可以了。这两个 server 监听同一个端口,但是 server_name 不同。如下:


# 代码是网站拷贝的, 适当的修改了一点, 只要形式一样就可以了

server {
	listen		80 ;
	server_name	xxxx.com;
	root		D:/test/webroot/test/;
	index		index.html index.htm;

	location / {
			allow  all;
	}
}
server {
	listen		80 ;
	server_name	www.123.com;
	root		D:/test/webroot/apache/;
	index		index.html index.htm;

	location / {
			allow  all;
	}
}
# [关键点]
# 单文件多站点配置, 如果不配置其中一个为 default_server 则失败
# 多文件多站点配置, 也是一样, 将server放置不同的文件 然后 include vhost/*.conf 进来
server {   
	listen		80 default_server;
	server_name	localhost;
	root		D:/test/webroot/nginx/;
	index		index.html index.htm;

	location / {
			allow  all;
	}
}

以上代码不知道出处也就不贴地址了~!

原文地址:https://www.cnblogs.com/dongyanglv/p/5970685.html