En rutt som byggts av $uri kan skicka en annan sökväg än den klienten angav. För http://service.example/files/a%2Fb?view=raw är det escapade snedstrecket en del av den ursprungliga stavningen.

VariabelRepresentation
$uriDen aktuella normaliserade URI:n, som kan ändras under intern bearbetning
$request_uriDen ursprungliga förfrågnings-URI:n, inklusive dess frågeargument

I en befintlig HTTP-vidarebefordringsproxy som redan väljer och validerar målauktoriteten kan den ursprungliga sökvägen och frågan bevaras med:

proxy_pass http://$http_host$request_uri;

$http_host tillhandahåller den valda Host-huvudauktoriteten i denna ordning. Behåll lyssnarens klientbegränsningar, målprincipen och konfigurationen för namnmatchning.

Att ersätta $uri$is_args$args med detta uttryck ändrar representationen som skickas; den tidigare använder den normaliserade sökvägen och de aktuella argumenten. Välj enligt slutpunktens avtal, särskilt när escapade avgränsare spelar roll eller en signatur täcker det ursprungliga målet. Avsiktlig omskrivning av sökvägen har ett annat krav.

Detta gäller den synliga HTTP-förfrågan. En HTTPS CONNECT-tunnel bär den senare förfrågan inuti TLS och kräver sin egen stödda hantering.

Relaterade artiklar