Behou geënkodeerde paaie in 'n bestaande NGINX-HTTP-aanstuurroete
Gebruik request_uri wanneer die aansturkontrak die oorspronklike pad en navraag nodig het, terwyl die bestaande bestemmingvalidering behoue bly.
'n Roete wat uit $uri gebou is, kan 'n ander pad stuur as die een wat die kliënt verskaf het. Vir http://service.example/files/a%2Fb?view=raw is die ontsnapte skuinsstreep deel van daardie oorspronklike spelling.
| Veranderlike | Voorstelling |
|---|---|
| $uri | Die huidige genormaliseerde URI, wat tydens interne verwerking kan verander |
| $request_uri | Die oorspronklike navraag-URI, insluitend sy navraagargumente |
In 'n bestaande HTTP-aanstuurproxy-opset wat reeds die bestemmingsowerheid kies en valideer, kan die oorspronklike pad en navraag behou word met:
proxy_pass http://$http_host$request_uri;$http_host verskaf die gekose Host-kop-owerheid in hierdie opset. Behou die luisteraar se kliëntbeperkings, bestemmingsbeleid en naamresolusie-konfigurasie.
Die vervanging van $uri$is_args$args met hierdie uitdrukking verander die voorstelling wat gestuur word; die eersgenoemde gebruik die genormaliseerde pad en huidige argumente. Kies volgens die eindpuntkontrak, veral wanneer ontsnapte skeiers saak maak of 'n handtekening die oorspronklike teiken dek. Doelbewuste padherskrywing het 'n ander vereiste.
Dit geld vir die sigbare HTTP-navraag. 'n HTTPS CONNECT-tonnel dra die latere navraag binne TLS en vereis sy eie ondersteunde hantering.