我在这里发帖,即使它可能更像一个SF问题,我认为它可能会让你们感兴趣。
有没有办法告诉Regex nginx,例如,如果第三个catpure groupe匹配重定向到那个呢?
示例: 我们有两种类型的网址:
circuit/asie/indonesie/denpasar-bali/
或circuit/asie/indonesie/
我们要重定向到
asie/indonesie/denpasar-bali/
或asie/indonesie/
假设我们有这个正则表达式:\w+\/([^\/]+)\/([^\/]+)\/?([^\/]+)?\/
怎么说如果匹配第一个案例重定向到第一个网址并匹配第二个重定向到第二个?
这样的事情可以起作用吗?
重写\ w + /([^ /] +)/([^ /] +)/?([^ /] +)?/ / $ 1 / $ 2 /?$ 3?/ permanent;
答案 0 :(得分:0)
你可以试试这个
rewrite ^(?:.*?/)(.+)$ $1 redirect;
要在n th
组之后进行捕获,您可以使用
^(?:(?:.*?\/){n})(.+)$
如果您想使用URL
名称中的允许字符,您可以找到答案here