我想要实现多个重定向,例如:
我这样做了:
location = /about {
return 301 /es_CR;
}
并且是正确的,但需要/about,/about-us 和/about.php 重定向到同一个域(/es_CR),但我只需要在一个位置执行此操作,我猜是这样的:
location = /about(*) {
return 301 /es_CR;
}
有人知道怎样做吗?
提前致谢。
答案1
您不需要在一个位置块中执行此操作,可以使用多个块
location = /about {
return 301 /es_CR;
}
location = /about-us {
return 301 /es_CR;
}
location = /about.php {
return 301 /es_CR;
}
或者也可以使用正则表达式来实现,类似这样的方法应该可以工作,但我还没有测试过。此正则表达式匹配 URL 中带有“about”的所有内容。
location ~* about {
return 301 /es_CR;
}
答案2
您可以构建与 about、about-us 和 about.php 匹配的正则表达式:
location ~ /(about|\/about-us|\.php) {
return 301 https://www.example.com;
}
希望有所帮助。