Hi Kaushal, On Fri, May 17, 2024 at 04:49:59PM +0530, Kaushal Shriyan wrote: > > I am running nginx version 1.26 on "Ubuntu 22.04.4 LTS" I have configured > the nginx as load balancer and the configuration details are as follows > > # nginx -v > nginx version: nginx/1.26.0 > # > > server { [...] > > location / { > # Define the upstream servers for load balancing > proxy_pass http://backend/;
Could you please explain a reason why did you decide to use `/' after the backend's name in the proxy_pass directive. > # Set HTTP headers > proxy_set_header Host $host; > proxy_set_header X-Real-IP $remote_addr; > proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; > proxy_set_header X-Forwarded-Proto $scheme; > } > > location /api/docs/ { > proxy_pass http://backend/api/docs/; It seems like '/api/docs/' can be safely removed, so I'd recommend to read the documentation for the proxy_pass directive, [1] <quote> If proxy_pass is specified without a URI, the request URI is passed to the server in the same form as sent by a client when the original request is processed, or the full normalized request URI is passed when processing the changed URI: location /some/path/ { proxy_pass http://127.0.0.1; } </quote> [...] > When i hit http://tead-local.com:80/api/docs/ I get http 200 response from > the backend server whereas when I try to hit using public IP :- > http://210.11.1.110:8085/api/docs/ I encounter http 404 not found. > > 101.0.62.200 - - [17/May/2024:16:38:24 +0530] "GET /api/docs/ HTTP/1.1" 404 > 153 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) > AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15 > Ddg/17.5" "-" To see the whole picture of processing a request by nginx, I'd also recommend to enable a debugging log, [2]. Hope that helps. References ---------- 1. https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass 2. https://nginx.org/en/docs/debugging_log.html -- Sergey A. Osokin _______________________________________________ nginx mailing list nginx@nginx.org https://mailman.nginx.org/mailman/listinfo/nginx