NGINX:将已弃用的URL列表重定向到主页

时间:2016-08-02 17:53:40

标签: redirect nginx

我目前有以下位置块,可以将各种网址重定向到主页:

location ~ ^/events/?(.*)$ {
    return 301 /;
}

location ~ ^/news/?(.*)$ {
    return 301 /;
}

location ~ ^/about/?(.*)$ {
    return 301 /;
}

...

基本上,/events, /events/, /news, /news/, /about, /about/全部重定向到/

是否有一种更清洁的方法可以做到这么湿?

1 个答案:

答案 0 :(得分:1)

你设置它的方式非常好,它已经很干净了,因为你可以准确地看到你正在做的事情。

如果你真的希望它作为一个location块,那么这就可以了:

location ~ ^/(events|news|about)?/.*$ {
    return 301 /;
}

解释:

此处,此位置将匹配括号中的任何URI,并且它包含尾部斜杠是可选的(?)。您不需要(.*)因为您没有以任何方式使用字符串的这一部分作为反向引用,因此您不需要存储它。 (当然,你可以这样做。)