A proxy server for providing transparent proxy services to a user of a
client device is provided. The proxy server receives a request from a
browser for a unit of digital content, requests the unit of digital
content from a remote server, receives the unit of digital content from
the remote server, parses the unit of digital content for references to
the remote server, identifies a reference within a software construct,
inserts a software function into the modified remote page for modifying
references, inserts a call to the software function into the software
construct, modifies references to the remote server in the unit of
digital content to form a modified unit of digital content by inserting a
surrogate server hostname into the references and removing a remote
server hostname from the references, and transmits the modified unit of
digital content to the browser.