Ta vare på koda stiar i ei eksisterande NGINX HTTP-vidaresendingsrute
Bruk request_uri når vidaresendingsavtalen krev den opphavlege stien og spørjinga, og hald på den eksisterande valideringa av destinasjonen.
Ei rute bygd av $uri kan senda ein annan sti enn den klienten oppgav. For http://service.example/files/a%2Fb?view=raw er den escaperte skråstreken ein del av den opphavlege skrivemåten.
| Variabel | Representasjon |
|---|---|
| $uri | Den gjeldande normaliserte URI-en, som kan endrast under intern handsaming |
| $request_uri | Den opphavlege førespurnads-URI-en, inkludert spørjeargumenta |
I ein eksisterande HTTP-vidaresendingsproxy som allereie vel og validerer destinasjonsautoriteten, kan den opphavlege stien og spørjinga takast vare på med:
proxy_pass http://$http_host$request_uri;$http_host leverer den valde Host-headerautoriteten i denne ordninga. Hald på klientavgrensingane til lyttaren, destinasjonspolitikken og konfigurasjonen for namneoppslag.
Å byta ut $uri$is_args$args med dette uttrykket endrar representasjonen som vert send; den førre brukar den normaliserte stien og dei gjeldande argumenta. Vel etter avtalen til endepunktet, særleg når escaperte skiljeteikn har noko å seia eller ein signatur dekkjer det opphavlege målet. Medvite omskriving av stien har eit anna krav.
Dette gjeld den synlege HTTP-førespurnaden. Ein HTTPS CONNECT-tunnel ber den seinare førespurnaden inne i TLS og krev si eiga støtta handsaming.