2

我想用 nginx 从

www.anysubdomain.domain.com?parameters , anysubdomain.com?parameters   

www.domain.com?parameteres&anysubdomain

anysubdomain 或参数是可选的

我试过了

server_name ~^(?<subdub>.*).\domain\.com$;
rewrite      ^ http://www.domain.com/?mode=$subdub permanent;

但这是错误的。

4

1 回答 1

3
server_name ~^(www\.)?(?<subdub>.+)\.domain\.com$;

此正则表达式将匹配“www.”的零个或一个外观。

此外,您在使用“.\domain”的正则表达式中存在错误。它应该是“\.domain”。

我也换

(?<subdub>.*)

经过

(?<subdub>.+)

确保非空子域名。这样 server_name 将不会匹配“www.domain.com”本身,这可能会导致重定向循环。

于 2013-03-26T01:02:56.343 回答