子域名分段 |
参数 |
参数截取位置 |
完整示例 |
应用场景 |
一段 |
domain |
${domain}.csdn.com |
editor.csdn.com |
线上环境 |
两段 |
subdomain, domain |
${subdomain} - ${domain}.csdn.com |
stage-editor.csdn.com |
基准环境(测试环境) |
三段 |
envdomain, subdomain, domain |
${envdomain} - ${subdomain} - ${domain}.csdn.com |
test-ashang-editor.csdn.com |
开发环境,每个研发有一个独立的域名 |
server {
listen 9090;
server_name ~^(?<envdomain>[^-]*)-(?<subdomain>.+)-(?<domain>[^-]+)\.csdn\.com$; # 两段以上
server_name ~^(?<subdomain>[^-]*)-(?<domain>[^-]+)\.csdn\.com$; #仅有两段
server_name ~^(?<domain>[^-]+)\.csdn\.com$; # 仅有一段
if ( $envdomain != '' ) {
return 401;
}
if ( $subdomain != '' ) {
return 403;
}
if ( $domain != '' ) {
return 404;
}
return 500;
}