Opening Scenario
You're deploying a Node.js API on port 3000 and a Python service on port 8000. Users should access both at api.example.com — /orders goes to Node, /inventory goes to Python. You can't expose both ports publicly, you want HTTPS termination in one place, and you need to add rate limiting without touching either service's code. Something has to sit in front of both.
Question Progression
1. What's the difference between a proxy and a reverse proxy?
Question: When someone says their company uses a proxy server, they usually mean corporate internet filtering — all employee traffic routes through a box that logs and blocks sites. How is a "reverse proxy" different from that?
Reasoning: In the corporate proxy case, the proxy acts on behalf of the client — it's a forward proxy. Clients know about it. The server receiving the request sees the proxy's IP, not the employee's…
In the full tutorial
- Closing: When to Reach for This