Reverse proxy

A proxy server connecting the Internet to an internal network.
Example scenario: A client on the Internet (cloud on the left) makes a request to a reverse proxy server (red oval in the middle). The proxy inspects the request, determines that it is valid and that it does not have the requested resource in its own cache. It then forwards the request to some internal web server (oval on the right). The internal server delivers the requested resource back to the proxy, which in turn delivers it to the client. The client on the Internet is unaware of the internal network, and cannot tell whether it is communicating with a proxy or directly with a web server.

In computer networks, a reverse proxy is an application that sits in front of back-end servers and forwards client (e.g., browser) requests to those servers instead of having the client directly talking to the servers. Reverse proxies have a number of uses, and help increase scalability, performance, resilience, and security; resources returned to the client appear as if they originated from the web server itself. Using a reverse proxy also has a number of risks.