October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk4 min

Reverse Proxy Choices: How NGINX Forwards Requests and Responses

A reverse proxy accepts a public request, forwards it to an upstream, and relays the response. Here’s how NGINX directives shape that path.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A reverse proxy works by accepting a client request at a public-facing endpoint, choosing an upstream server, forwarding the request, and relaying the response. In NGINX, the proxy_pass directive specifies where a request goes; other settings can change its path or headers, encrypt the upstream connection, or distribute requests across servers. Those are choices layered on top of the basic forwarding role.

What happens when a client uses a reverse proxy?

There are two connections to keep in mind: client to proxy, then proxy to upstream. The client connects to the proxy’s public endpoint. NGINX handles that connection, evaluates its configuration—including the matched server and location—and makes a separate request to the selected upstream. It then relays the upstream response to the client.

As an Amazon Associate I earn from qualifying purchases.

The browser therefore communicates with the proxy, not necessarily with the application server directly. The backend can remain behind the proxy when the network is configured that way, but a reverse proxy does not automatically conceal a backend in every topology.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

NGINX describes its role succinctly: “The ngx_http_proxy_module module allows passing requests to another server.” NGINX proxy module documentation.

#1 Best Overall
Sale
TP-Link AX1800 WiFi 6 Router (Archer AX21 V5)
  • DUAL-BAND WIFI 6 ROUTER: Wi-Fi 6(802.11ax) technology achieves faster speeds, greater capacity and reduced network congestion compared to the previous gen. All WiFi routers require a separate modem. Dual-Band WiFi routers do not support the 6 GHz band.
  • AX1800: Enjoy smoother and more stable streaming, gaming, downloading with 1.8 Gbps total bandwidth (up to 1200 Mbps on 5 GHz and up to 574 Mbps on 2.4 GHz). Performance varies by conditions, distance to devices, and obstacles such as walls.
  • CONNECT MORE DEVICES: Wi-Fi 6 technology communicates more data to more devices simultaneously using revolutionary OFDMA technology
  • EXTENSIVE COVERAGE: Achieve the strong, reliable WiFi coverage with Archer AX1800 as it focuses signal strength to your devices far away using Beamforming technology, 4 high-gain antennas and an advanced front-end module (FEM) chipset
  • OUR CYBERSECURITY COMMITMENT: TP-Link is a signatory of the U.S. Cybersecurity and Infrastructure Security Agency’s (CISA) Secure-by-Design pledge. This device is designed, built, and maintained, with advanced security as a core requirement.

How does NGINX decide where a request goes?

For HTTP proxying, proxy_pass names an upstream URL using the http or https scheme. The address can be a domain name, an IP address, a port, or a configured server group. The directive appears in a location context, so both the matched location and the URI in proxy_pass matter to the path sent upstream.

When proxy_pass includes a URI, NGINX replaces the part of the request URI that matched the location with that configured URI. Without a URI, URI handling follows different rules. As a result, the backend may receive a different path from the one the client requested. Slash placement and the exact location configuration can affect the result, so check the URI rules for the NGINX version and configuration you deploy rather than assuming the proxy simply copies or strips a prefix. See the official proxy_pass documentation.

Rank #2
Sale
TP-Link AC1200 WiFi Router Dual Band Wireless Internet Router (Archer A54) | 4 x 10/100 Mbps Fast Ethernet Ports, EasyMesh Compatible, Support Guest WiFi, Access Point Mode, IPv6 & Parental Controls
  • Dual-band Wi-Fi with 5 GHz speeds up to 867 Mbps and 2.4 GHz speeds up to 300 Mbps, delivering 1200 Mbps of total bandwidth¹. Dual-band routers do not support 6 GHz. Performance varies by conditions, distance to devices, and obstacles such as walls.
  • Covers up to 1,000 sq. ft. with four external antennas for stable wireless connections and optimal coverage.
  • Supports IGMP Proxy/Snooping, Bridge and Tag VLAN to optimize IPTV streaming
  • Access Point Mode - Supports AP Mode to transform your wired connection into wireless network, an ideal wireless router for home
  • Advanced Security with WPA3 - The latest Wi-Fi security protocol, WPA3, brings new capabilities to improve cybersecurity in personal networks

What does the backend actually receive?

The upstream request is not necessarily a byte-for-byte copy of the client’s request. NGINX can redefine or append request fields before forwarding them. In particular, the Host value affects how an application selects a site or route. NGINX’s default Host handling uses $proxy_host; a configuration can instead pass $host or $http_host. Those choices differ, including when a client request omits a Host field. Choose a value that matches the application’s routing needs, and consult NGINX’s header directive documentation.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Applications often need the client address as well as the upstream connection’s immediate peer address. NGINX exposes $proxy_add_x_forwarded_for, which appends the proxy’s remote address to an existing X-Forwarded-For field or initializes the field from that address. Such headers are not trustworthy just because they exist: an application should accept forwarded client information only through a known, validated proxy chain. Configure the application’s trusted-proxy rules to match the actual network path.

Rank #3
TP-Link AC1200 Gigabit Dual Band WiFi Router (Archer A6)
  • Dual band router upgrades to 1200 Mbps high speed internet (300mbps for 2.4GHz plus 900Mbps for 5GHz), reducing buffering and ideal for 4K stream
  • Full Gigabit Ports - Gigabit Router with 4 Gigabit LAN ports, ideal for any internet plan and allow you to directly connect your wired devices
  • Boosted Coverage - Four external antennas equipped with Beamforming technology extend and concentrate the Wi-Fi signals
  • MU-MIMO technology - (5GHz band) allows high speeds for multiple devices simultaneously
  • Access Point Mode - Supports AP Mode to transform your wired connection into wireless network, an ideal wireless router for home

Does HTTPS to the proxy encrypt the backend hop?

No. Client-to-proxy TLS and proxy-to-upstream TLS are separate connections and separate configuration decisions. An HTTPS listener protects the first leg; it does not by itself encrypt the second. NGINX supports both HTTP and HTTPS upstream URLs through proxy_pass, so select the upstream scheme according to the security requirements and network between the proxy and backend.

For an HTTPS listener, NGINX configuration uses the ssl parameter together with certificate and private-key paths. The private key should have restricted file access. The HTTPS documentation page lists TLSv1.2 and TLSv1.3 as its default protocol set; verify the settings for the NGINX release in use. See the NGINX HTTPS server configuration guide.

Rank #4
NETGEAR Nighthawk WiFi 6 Router R6700AX, Up to 1,500 sq ft, 1.8 Gbps | Reliable Performance, Easy Set Up, 20 devices, 4× Gigabit Port, Dual Band, AX1800
  • NIGHTHAWK WIFI 6 ROUTER FOR YOUR WHOLE HOME: Delivers fast, reliable WiFi across every room of your apartment or small home for streaming, gaming, video calls, and smart home devices, all running at the same time without slowing each other down.
  • WORKS WITH YOUR EXISTING INTERNET SERVICE: Pairs with your existing modem or gateway via ethernet. Compatible with most cable, fiber, DSL, and satellite providers. Some gateways and modem router combos may require bridge mode. No coax needed.
  • SET UP AND MANAGE YOUR NETWORK WITH THE NIGHTHAWK APP: Download the free Nighthawk app on iOS or Android for guided setup. Manage WiFi, run speed tests, pause devices, and set up guest networks from anywhere. Active internet required.
  • READY FOR THE DEVICES YOU ALREADY OWN: Your phones, laptops, and TVs work right out of the box. WiFi 6 delivers speeds up to 1.8 Gbps across 2.4 GHz and 5 GHz bands. Backward compatible with WiFi 5 and earlier.
  • COVERAGE IN EVERY ROOM: Covers up to 1,500 sq. ft. for up to 20 connected devices. Walls, floors, and interference can reduce range. Larger or multi-story homes may benefit from a NETGEAR Orbi mesh WiFi system.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

When does load balancing enter the picture?

Proxying can send requests to one upstream or to a group of servers. Choosing among servers is a load-balancing policy layered onto forwarding, not an automatic property of every reverse proxy. NGINX documents these methods and passive upstream failure handling:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Method How it distributes requests What to consider
Round-robin Distributes requests in turn among upstream servers. Successive requests from one client are not guaranteed to reach the same server.
Least-connected Favors the server with fewer active connections. NGINX notes it can help when requests take different amounts of time.
IP hash Uses the client IP as a hash key to tend to send that client to the same server. This is affinity, not a guarantee of correct application sessions; behavior changes if the selected server is unavailable.

NGINX can also respond passively to upstream communication failures by marking a server failed and avoiding it temporarily. The configured max_fails and fail_timeout affect this handling. These policies solve different problems: consider request-duration variation, backend capacity, whether clients need affinity, and what client IP the proxy can see. No one method is best for every workload. Details are in the NGINX load-balancing documentation.

Best Value
Sale
TP-Link AXE5400 Tri-Band WiFi 6E Router, 2025 PCMag Editors' Choice | 2.5Gbps WAN Port for Gaming & Streaming, 6GHz Band, 160MHz, OneMesh, Dual-Core CPU, VPN & WPA3 (Archer AXE75)
  • Tri-Band WiFi 6E Router - Up to 5400 Mbps WiFi for faster browsing, streaming, gaming and downloading, all at the same time(6 GHz: 2402 Mbps;5 GHz: 2402 Mbps;2.4 GHz: 574 Mbps)
  • WiFi 6E Unleashed – The 6 GHz band brings more bandwidth, faster speeds, and near-zero latency; Enables more responsive gaming and video chatting
  • Connect More Devices—True Tri-Band and OFDMA technology increase capacity by 4 times to enable simultaneous transmission to more devices
  • Unique Design, More RAM, Better Processing - A unique housing design provides optimal heat dissipation, combined with a 1.0 GHz dual-core CPU and 512 MB High-Speed Memory, the AXE75 is designed for long-term reliability and performance.
  • EasyMesh-compatible - Extend network range even more by adding EasyMesh-compatible routers, extenders, or wireless powerline adapters for a seamless, whole-home connection. Eliminate dead zones, drops, and lag as you move across your home.

How to reason through a proxy configuration

  1. Identify the public endpoint. Determine which NGINX server and listener receive the client connection, and whether that leg uses HTTP or HTTPS.
  2. Follow the match. Trace the request through the server and location rules that apply to its host and path.
  3. Read proxy_pass literally. Identify its scheme, upstream address or group, and whether it includes a URI; then determine what path the backend receives under NGINX’s URI rules.
  4. Check request fields. Confirm what Host value and forwarded-address information reach the application, and which proxy chain the application trusts.
  5. Trace the return path. The upstream response comes back to NGINX, which relays it over the client-facing connection.
  6. If there is an upstream group, inspect its policy. Determine how servers are selected and how configured passive failure handling changes selection.

This two-connection model explains the core behavior; TLS, header adaptation, and server selection each modify a specific part of the path. Directive details and defaults can be version-sensitive, so check the official NGINX documentation for the release you run.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.