server_name 指令详解
server_name 指令设置基于域名的虚拟主机,⼀个ip的服务器可以配置多个域名。下⾯这些server_name是有效的:
- server_name domain.com;
- server_name domain.com www.domain.com;
- server_name *.domain.com;
- server_name .domain.com;
- server_name domain.*;
- server_name "";
多个域名之间以空格分隔。nginx允许⼀个虚拟主机有⼀个或多个名字,也可以使⽤通配符"*"来设置虚拟主机的名字。
server_name指令在接到请求后的匹配顺序分别为:
- 1、准确的server_name匹配,例如:domain.com www.domain.com
- 2、以通配符开始的字符串: .domain.com .domain.com
- 3、以通配符结束的字符串:www.
- 4、匹配正则表达式:~^(?.+).domain.com$
nginx将按照1,2,3,4的顺序对server name进⾏匹配,有⼀项匹配以后就会停⽌搜索,类似于location指令。文章来源:https://www.toymoban.com/news/detail-612371.html
背景
为了区分线上环境和测试环境,我弄了个自己测试专用的域名test.daemoncoder.com,线上环境的正式域名是www.daemoncoder.com。nginx里的server_name配置改为:文章来源地址https://www.toymoban.com/news/detail-612371.html
# 只列出了我们关心的配置,省略了其他无关部分
server {
server_name www.d
到了这里,关于记一个nginx server_name配置多个域名时的坑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!