Example sequence for a reverse proxy request

Here is an example of the typical sequence for a request processed using a reverse proxy server.


Diagram showing the process for a reverse proxy request
  1. The client makes a request to the public URL.

    For this example, for a Studio application, the request URL might be something like http://mystudio/eid/web/myapp, using the default port 80.

    The hostname resolves to the address of the reverse proxy server. The reverse proxy is listening on this address and receives the request.

  2. The reverse proxy server analyzes the URL to determine where the request needs to be proxied to.

    A reverse proxy might use any part of the URL to route the request, such as the protocol, host, port, path, or query-string. Typically the path is the main data used for routing.

    The reverse proxy configuration rules determine the outbound URL to send the request to. This destination is usually the end server responsible for serving the content. The reverse proxy server may also rewrite parts of the request. For example, it may change or make additions to path segments.

    Reverse proxies can also add standard or custom headers to the request.

    For example, the URL http://mystudio/web/myapp might be proxied to http://studioserver1:8080/eid/web/myapp. In this case:
    • The hostname of the target server is studioserver1
    • The port is changed to 8080
    • The context path /eid/ is added
  3. The reverse proxy server sends the request to the target server.
  4. The target server sends the response to the reverse proxy server.
  5. The reverse proxy server reads the request and returns it to the client.