Skip to content

Proxy / Reverse Proxy

networkproxyreverse-proxy

A proxy is a middle server that sits between you and the internet. You send your request to the proxy, and it passes it along to the website. A reverse proxy is similar, but it sits in front of a server and handles requests coming from users before passing them to the real server.

How it works

With a proxy, the user connects first to the proxy, then the proxy talks to the website. This can hide the user’s identity or add filtering. With a reverse proxy, users think they are talking to the main server, but in fact, they are talking to the reverse proxy. The reverse proxy decides which backend server should handle the request, balances load, or adds security.

Analogy

http message anatomy A normal proxy is like a personal assistant who makes phone calls for you. People don’t see your number, they only see the assistant’s number. A reverse proxy is like a company’s receptionist. Customers call the company, but the receptionist answers first. Then she decides which employee should handle the call.

Proxy/Reverse Proxy

AspectForward ProxyReverse Proxy
DirectionClient → Proxy → ServerClient → Proxy → Backends
VisibilityClient configures proxyTransparent to client
PurposeActs for clientActs for server
HidingHides client from serverHides servers from client
Common UsesPrivacy, content filteringLoad balancing, caching, SSL termination, security
ConfigurationClient-side setupServer-side deployment