ਮੌਜੂਦਾ NGINX HTTP ਫਾਰਵਰਡਿੰਗ ਰੂਟ ਵਿੱਚ ਐਨਕੋਡ ਕੀਤੇ ਪਾਥ ਸੰਭਾਲੋ
ਜਦੋਂ ਫਾਰਵਰਡਿੰਗ ਸਮਝੌਤੇ ਨੂੰ ਅਸਲ ਪਾਥ ਅਤੇ ਕਵੈਰੀ ਦੀ ਲੋੜ ਹੋਵੇ ਤਾਂ request_uri ਵਰਤੋ, ਅਤੇ ਮੌਜੂਦਾ ਮੰਜ਼ਿਲ ਪੁਸ਼ਟੀ ਬਣਾਈ ਰੱਖੋ।
$uri ਤੋਂ ਬਣਿਆ ਰੂਟ ਕਲਾਇੰਟ ਵੱਲੋਂ ਦਿੱਤੇ ਪਾਥ ਤੋਂ ਵੱਖਰਾ ਪਾਥ ਭੇਜ ਸਕਦਾ ਹੈ। http://service.example/files/a%2Fb?view=raw ਲਈ, ਐਸਕੇਪ ਕੀਤਾ ਸਲੈਸ਼ ਉਸ ਅਸਲ ਸਪੈਲਿੰਗ ਦਾ ਹਿੱਸਾ ਹੈ।
| ਵੇਰੀਏਬਲ | ਪ੍ਰਸਤੁਤੀ |
|---|---|
| $uri | ਮੌਜੂਦਾ ਸਧਾਰਨ ਕੀਤਾ URI, ਜੋ ਅੰਦਰੂਨੀ ਪ੍ਰੋਸੈਸਿੰਗ ਦੌਰਾਨ ਬਦਲ ਸਕਦਾ ਹੈ |
| $request_uri | ਅਸਲ ਬੇਨਤੀ URI, ਇਸਦੇ ਕਵੈਰੀ ਆਰਗੂਮੈਂਟਾਂ ਸਮੇਤ |
ਮੌਜੂਦਾ HTTP ਫਾਰਵਰਡ-ਪ੍ਰਾਕਸੀ ਸੈਟਅਪ ਵਿੱਚ ਜੋ ਪਹਿਲਾਂ ਹੀ ਮੰਜ਼ਿਲ ਅਧਿਕਾਰ ਚੁਣਦਾ ਅਤੇ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ, ਅਸਲ ਪਾਥ ਅਤੇ ਕਵੈਰੀ ਇਸ ਤਰ੍ਹਾਂ ਸੰਭਾਲੇ ਜਾ ਸਕਦੇ ਹਨ:
proxy_pass http://$http_host$request_uri;$http_host ਇਸ ਸੈਟਅਪ ਵਿੱਚ ਚੁਣਿਆ Host ਹੈਡਰ ਅਧਿਕਾਰ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਸੁਣਨ ਵਾਲੇ ਦੀਆਂ ਕਲਾਇੰਟ ਪਾਬੰਦੀਆਂ, ਮੰਜ਼ਿਲ ਨੀਤੀ ਅਤੇ ਨਾਮ-ਹੱਲ ਸੰਰਚਨਾ ਬਣਾਈ ਰੱਖੋ।
$uri$is_args$args ਨੂੰ ਇਸ ਸਮੀਕਰਨ ਨਾਲ ਬਦਲਣ ਨਾਲ ਭੇਜੀ ਜਾਣ ਵਾਲੀ ਪ੍ਰਸਤੁਤੀ ਬਦਲ ਜਾਂਦੀ ਹੈ; ਪਿਛਲਾ ਸਧਾਰਨ ਕੀਤਾ ਪਾਥ ਅਤੇ ਮੌਜੂਦਾ ਆਰਗੂਮੈਂਟ ਵਰਤਦਾ ਹੈ। ਐਂਡਪੌਇੰਟ ਸਮਝੌਤੇ ਅਨੁਸਾਰ ਚੁਣੋ, ਖਾਸ ਕਰਕੇ ਜਦੋਂ ਐਸਕੇਪ ਕੀਤੇ ਵਿਭਾਜਕ ਮਹੱਤਵਪੂਰਨ ਹੋਣ ਜਾਂ ਦਸਤਖਤ ਅਸਲ ਟਾਰਗਿਟ ਨੂੰ ਕਵਰ ਕਰਦੇ ਹੋਣ। ਜਾਣਬੁੱਝ ਕੇ ਪਾਥ ਮੁੜ-ਲਿਖਣ ਦੀ ਲੋੜ ਵੱਖਰੀ ਹੈ।
ਇਹ ਦਿੱਖਣ ਵਾਲੀ HTTP ਬੇਨਤੀ ਲਈ ਲਾਗੂ ਹੁੰਦਾ ਹੈ। HTTPS CONNECT ਟਨਲ ਬਾਅਦ ਦੀ ਬੇਨਤੀ ਨੂੰ TLS ਦੇ ਅੰਦਰ ਲੈ ਜਾਂਦੀ ਹੈ ਅਤੇ ਇਸਨੂੰ ਆਪਣੇ ਸਮਰਥਿਤ ਪ੍ਰਬੰਧਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।