我目前有以下位置块,可以将各种网址重定向到主页:
location ~ ^/events/?(.*)$ {
return 301 /;
}
location ~ ^/news/?(.*)$ {
return 301 /;
}
location ~ ^/about/?(.*)$ {
return 301 /;
}
...
基本上,/events, /events/, /news, /news/, /about, /about/
全部重定向到/
。
是否有一种更清洁的方法可以做到这么湿?
答案 0 :(得分:1)
你设置它的方式非常好,它已经很干净了,因为你可以准确地看到你正在做的事情。
如果你真的希望它作为一个location
块,那么这就可以了:
location ~ ^/(events|news|about)?/.*$ {
return 301 /;
}
解释:
此处,此位置将匹配括号中的任何URI,并且它包含尾部斜杠是可选的(?)。您不需要(.*)
因为您没有以任何方式使用字符串的这一部分作为反向引用,因此您不需要存储它。 (当然,你可以这样做。)