Pessoalmente, não gosto de expressões regulares complexas em location
directives, porque nginx
precisa testar cada URI solicitado. Você pode usar um esquema indiscutivelmente mais simples usando uma ou mais instruções rewrite...break
.
Por exemplo:
location ^~ /proxy/ {
rewrite ^/proxy(.+?)/?$ $1 break;
proxy_pass http://127.0.0.1:8080;
}
O modificador ^~
evita qualquer interferência de qualquer bloco de localização de expressão regular. Consulte este documento para saber mais.
A captura não é voraz para que o% trailing /
opcional seja removido.