Skip to main content
Home/Glossary/Reverse Proxy

Reverse Proxy

A reverse proxy is an intermediary deployed on the server side: client requests hit the proxy first, which forwards them to backend services and returns the responses. Clients only ever see the proxy's address; the backend architecture stays completely hidden. Nginx, Caddy, HAProxy, and most cloud load balancers are reverse proxies.

How it works

A reverse proxy is the mirror image of a forward proxy: a forward proxy acts on behalf of clients going out, while a reverse proxy receives requests on behalf of servers. Typical responsibilities include TLS termination (centralized certificate management), load balancing across backends, caching static content, compression and protection (rate limiting, WAF integration), and canary routing that sends a slice of traffic to a new version. On a single box, a reverse proxy also lets multiple domains and services share ports 80/443. For picking one: Caddy shines with automatic HTTPS and minimal config, while Nginx has the deeper ecosystem and high-concurrency tuning resources — see our Caddy vs Nginx comparison for the full breakdown.

Examples

  • 1.Three services on one server, routed by domain to different ports through Nginx
  • 2.HTTPS certificates terminated at the proxy layer while backends speak plain HTTP
  • 3.Adding backends behind the proxy for load balancing with health checks as the site grows