·4 min read
What Is a Reverse Proxy?
A reverse proxy is a server that sits in front of one or more backend servers. Clients (browsers, apps) connect to the reverse proxy thinking they're connecting to the origin. The proxy receives the request, applies any processing, and forwards it to the appropriate backend.
Why the word 'reverse'
A forward proxy acts on behalf of clients, sitting in front of them as they go out to the internet. A reverse proxy acts on behalf of servers, sitting in front of them as traffic comes in. The direction of the proxy's 'loyalty' is reversed.
What reverse proxies do
- TLS termination: decrypt HTTPS so the backend receives plain HTTP.
- Load balancing: distribute requests across multiple backend instances.
- Security filtering: apply WAF rules, rate limits, and bot detection.
- Caching: serve cached responses for repeated requests.
- Compression and optimization: apply gzip or brotli before sending responses to clients.
Nginx, HAProxy, and Cloudflare are all commonly used as reverse proxies. Karbon operates as a security-focused reverse proxy, adding filtering and intelligence at the edge.