Nginx 代理将每个斜杠部分放入一个变量中

Nginx 代理将每个斜杠部分放入一个变量中

我怎样才能将 URL 的每个斜线部分放入变量中以写入代理 URL?

例子:

https://example.com/part1/part2 或者 https://example.com/sub/8080

然后

proxy_pass http://$part1.example.com:$part2;

答案1

像这样:

location ~* /(.+)/(.+)$ {
    set $hostpart $1;                                                                                            
    set $urlpart $2;                                                                                              

    proxy_pass http://$hostpart.example.com/$urlpart break;
}

相关内容