我想要这个功能:
mydomain.com--->301--->mynewdomain.com
subdomain1.mydomain.com--->301--->subdomain1.mynewdomain.com
subdomain2.mydomain.com--->301--->subdomain2.mynewdomain.com
...............
subdomain*.mydomain.com--->301--->subdomain*.mynewdomain.com
那么谁能给我一些Nginx配置代码。 我已经尝试过了,但是没有用:
server{
listen 80;
server_name "~^(.*)mydomain.com";
set $sub_name $1;
return 301 $scheme://{$sub_name}mynewdomain.com$request_uri ;
}
答案 0 :(得分:0)
您应该在server_name
正则表达式中使用命名捕获。有关详细信息,请参见this document。
在变量名需要大括号的情况下,请使用${ ... }
。
例如:
server{
listen 80;
server_name ~^(?<sub_name>.*)mydomain.com;
return 301 $scheme://${sub_name}mynewdomain.com$request_uri;
}