Introduction
Sometimes backend applications cannot be accessed directly by users because they run on private servers or use ports that are blocked. A reverse proxy acts like a friendly middleman that takes user requests and forwards them to the backend safely and efficiently.
When you want to hide the real address and port of your backend app from users for security.
When you need to distribute user requests to multiple backend servers to balance the load.
When you want to add SSL encryption to a backend app that does not support it.
When you want to cache responses to speed up repeated requests.
When you want to serve multiple backend apps under one public web address.