删除nginx中的第一个文件夹



我有一些URL,比如:

http://example.com/username/file.zip
http://example.com/username/videos/aaa.avi
http://example.com/username/videos/abc/asdfdef/aaa.avi

文件的真实路径是:

/file.zip
/videos/aaa.avi
/videos/abc/asdfdef/aaa.avi

所以基本上我需要删除URL中的第一个文件夹我试着使用这个重写规则:

rewrite ^/.*/(.*)$ /$1 last;

但它删除了所有文件夹,只grep了文件名,只对第一个URL有效,其余的都有404错误

-p.S:用户名可以是任何东西

我没有测试它,但基于nginx使用pcre库,我认为

rewrite ^/.*?/(.*)$ /$1 last;

会起作用。

.*?匹配零次和无限次之间的任何字符,尽可能少地匹配,根据需要扩展(惰性(

最新更新