在开始处理一个http请求时,nginx会取出header头中的host,与nginx.conf中每个server的server_name进行匹配,以此决定到底由哪一个server块来处理这个请求。
1、完全匹配
2、通配符在前的,如*.test.com
3、在后的,如www.test.*
4、正则匹配,如~^\.www\.test\.com$
5、如果都不匹配
5.1、优先选择listen配置项后有default或default_server的
5.2、找到匹配listen端口的第一个server块
相关博客:https://www.cnblogs.com/wangzhisdu/p/7839109.html