A reverse proxy is a server that accepts requests for one or more backend servers and returns their responses to clients. The client connects to the reverse proxy as though it were the destination service, usually without needing special proxy settings.

Reverse proxies commonly distribute traffic across backend instances, terminate TLS connections, cache responses, compress content, or apply request limits before traffic reaches an application. They can also hide backend addresses and give several services one public entry point. If one backend is unavailable, a reverse proxy may route new requests to another healthy instance when configured to do so.

A forward proxy sits on the client side of a connection and represents the client to destinations. A reverse proxy sits on the server side and represents the destination to clients. The terms describe direction, not whether the software is trustworthy or whether traffic is encrypted. The same server product can often perform either role with different configuration.

Because a reverse proxy controls inbound application traffic, its forwarding headers and TLS settings affect how a backend identifies the original client and scheme. Applications should trust such headers only from known proxy infrastructure.

Related terms: proxy server and forward proxy.

Browse all glossary terms

Use residential proxies with your own workflow.