Você pode usar o seguinte, lembrando que IfIsEvil
location = / {
if ($arg_site) {
return 302 /$arg_site;
}
}
As páginas da web são acessadas da seguinte maneira:
example.com/?site=website
Neste exemplo, estou acessando o site localizado em example.com domain
.
Alguém poderia sugerir uma maneira ideal de reescrever regras, de modo que o acima seria mostrado e acessado por example.com/website
?
nginx, Centos 7
Relacionados:
A idéia é que você crie um loop de redirecionamento, mas não realmente, já que há uma diferença entre redirecionamentos internos e internos, portanto, o loop não é fechado, porque um redirecionamento é explicitamente somente externo, enquanto o outro é explicitamente apenas interno:
location = / {
if ($arg_site) {
return 302 /$arg_site;
}
return 200
"<!DOCTYPE html><title>site</title>
<form><input name='site' value='website'/></form>\n";
}
location / {
rewrite ^/([^/]*)\$ /?site=$1 break;
proxy_pass http://javabackend:8080;
}