请问 如何访问testser111.com/a111 和 testser111.com/b111 时 自动proxy_pass 到 http://a111:8081; 和 http://b111:8081;,a111 和 b111 是变量 可能还是其他的

正常这样是可以的

        server {
            listen 80;
        
            location / {
                set $service  '';
                rewrite ^/a111/(.*)$ /$1 break;
                proxy_pass http://a111:8081;
            }
        }

这是我尝试 改写的 lua 语法,但是有问题,哪位大佬可以帮忙根据上方的配置,将 <<a111>> 修改为lua的形式,设置为变量

        server {
            listen 80;

            location / {
                set $service  '';
                rewrite_by_lua '
                    local host = ngx.var.host
                    local m = ngx.re.match(host, "testser111.com")
                    if m then
                        ngx.var.service = m[1]
                    end
                    ngx.req.set_uri("a111/(.*)$ /$1", false)
                ';
                proxy_pass http://a111:8081;
            }
        }

    已解决

        server {
            listen 80;
    
            location / {
                set $service  '';
                rewrite_by_lua '
                    local uri = ngx.var.uri
                    local m = ngx.re.match(uri, "^/(.+?)/(.*)$")
                    if m then
                        ngx.var.service = m[1] .. ":8081/" .. m[2]
                    end
                ';
                proxy_pass http://$service;
            }
        }
      Write a Reply...