如果nCapture匹配,请在nginx[Regex]中执行操作



我在这里发帖,即使这可能更像是一个SF问题,我想你们中的一些人可能会感兴趣。

有没有一种方法可以告诉Regex到nginx,例如,第三个catpure组是否匹配重定向到其他组?

示例:我们有两种类型的URL:

circuit/asie/indonesie/denpasar-bali/circuit/asie/indonesie/

我们想重定向到

asie/indonesie/denpasar-bali/asie/indonesie/

假设我们有这个Regex:w+/([^/]+)/([^/]+)/?([^/]+)?/

这里的游乐场

如果匹配第一个大小写重定向到第一个url,匹配第二个重定向到第二个url,你怎么说?

这样的东西行得通吗?

重写 nbsp;\w+/([^/]+)/([^/]+)?([^/]+)?/ nbsp $1/2/美元$3?/永久的

你可以试试这个

rewrite ^(?:.*?/)(.+)$ $1 redirect;

对于n th组之后的捕获,可以使用

^(?:(?:.*?/){n})(.+)$

Regex演示

如果你想在URL名称中使用允许的字符,你可以在这里找到答案

最新更新