nginx重定向包括子域,www和参数

时间:2013-03-25 21:44:16

标签: redirect nginx subdomain url-parameters

我想从

中使用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;

但这是错误的。

1 个答案:

答案 0 :(得分:2)

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

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

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

我也替换

(?<subdub>.*)

通过

(?<subdub>.+)

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