如何在nginx中将$uri修改为request_uri的部分uri?

How to modify $uri to part of uri from request_uri in nginx?

假设 $request_uri 的值为 /a/b/c 。 $uri 的当前值为 /index.php 。 是否可以将我的 $uri 更改为 /b/c .

我试过了,好像不行,

if ($request_uri ~* /a/(.*)/(.*)){
  set $uri //;
}

但这给出了重复"uri"变量的错误。 我也试过了,

if ($request_uri ~* /a/(.*)/(.*)){
  rewrite ^ // break;
}

但是 $variables 似乎不存储值。

有出路吗?谢谢

我从 here 开始做到了。

基本上需要重写两次。

rewrite ^ $request_uri;
rewrite /.*/(.*)/(.*) //;

第一次重写修改了 /index.php -> /a/b/c.

的 uri

第二次重写修改了 /a/b/c -> /b/c.

的 uri