Nginx动态位置配置

Lar*_*kel 2 nginx

我的目标是配置 nginx 以动态匹配位置,如下所示:

http://www.domain.com/app-one
http://www.domain.com/app-two
http://www.domain.com/app-three

/usr/share/nginx/html/app-one/public
/usr/share/nginx/html/app-two/public
/usr/share/nginx/html/app-three/public
Run Code Online (Sandbox Code Playgroud)

我很困惑如何做到这一点。如果我可以这样做,或者如果建议或最佳实践这样做(我不想使用子域解决方案)。

如果我尝试这样做:

location ~ /(^/)+ {
    alias   /usr/share/nginx/html/$1/public;
    index  index.html;
}
Run Code Online (Sandbox Code Playgroud)

我得到的只是 403。

但有办法解决这个问题,对吗?你知不知道怎么?

附言。我通过谷歌和这里都没有找到任何对我有帮助的解释。

Ale*_*Ten 5

尝试这个

location ~ ^/([^/]+)(.*)$ {
    alias   /usr/share/nginx/html/$1/public$2;
    index  index.html;
}
Run Code Online (Sandbox Code Playgroud)