When a client sends a request to a proxy server the situation is slightly different. The client always uses HTTP for transactions with the proxy server, even when accessing a resource served by a remote server using another protocol, like Gopher or FTP.
However, instead of specifying only the pathname and possibly search keywords to the proxy server, the full URL is specified (Fig. 3 and Fig. 4). This way the proxy server has all the information necessary to make the actual request to the remote server specified in the request URL, using the protocol specified in the URL.
From this point on the proxy server acts like a client to retrieve the
document; it calls the same protocol module of libwww
that the client would call to perform the retrieval. However, the
"presentation" on the proxy actually means the creation of an HTTP
reply containing the requested document to the client. For example, a
Gopher or FTP directory listing is returned as an HTML document.