The eg/ directory holds a few example proxies.

All scripts accept HTTP::Proxy constructor key/value pairs on the
command-line. Example: ./proxy.pl port 3128 host 0.0.0.0

 * proxy.pl

   A very simple proxy.

   Filter: none

 * anonymiser.pl

   A simple anonymizing proxy, similar in functionnality to the one
   shown by Randal L. Schwartz in his WebTechniques #11 column.
   http://www.stonehenge.com/merlyn/WebTechniques/col11.html

   Filter: HTTP::Proxy::HeaderFilter::simple

 * proxy-auth.pl

   A very simple proxy, with Basic authentication.

   Filter: HTTP::Proxy::HeaderFilter::simple

 * leet.pl
 * rot13.pl
 * rainbow.pl

   These filters do simple modifications of all HTML pages.

   Filters: HTTP::Proxy::BodyFilter::tags
            HTTP::Proxy::BodyFilter::simple
            HTTP::Proxy::BodyFilter::htmltext

 * bork.pl

   This ffiltir elsu duis simpli mudiffixeshuns uff ell HTML pegis.
   Bork bork bork ! 

 * outline.pl
 * ayb.pl

   These proxy do more complicated modifications of HTML pages, and
   require a HTML::Parser object to do so. All you tag are belong to us.

   Filter: HTTP::Proxy::BodyFilter::htmlparser

 * post.pl

   This filter outputs the request URI and the form parameters of
   all POST requests.

 * logger.pl

   This filter outputs the important information out of GET and POST
   requests: method, URI, cookies, content-type (text/*) and POST
   request parameters.

   Filter: HTTP::Proxy::HeaderFilter::simple

 * adblock.pl

   This is a very simple proxy that block ad sites.

   Filters: HTTP::Proxy::HeaderFilter::simple
            HTTP::Proxy::BodyFilter::simple

 * trim.pl

   A simple proxy that trims lines of HTML text.

   Filters: HTTP::Proxy::BodyFilter::lines
            HTTP::Proxy::BodyFilter::simple

 * javascript.pl

   A proxy that adds anything/javascript at the beginning of a HTML page.
   (right after the <body> tag)

   Filter: HTTP::Proxy::BodyFilter::htmlparser

 * rfc.pl

   A proxy that automatically saves the files named rfc\d+\.txt to
   a file of the same name in the rfc/ directory.

   Filter: HTTP::Proxy::BodyFilter::save

 * dragon.pl

   A proxy that removes some of the shortcomings of the Dragon Go
   Server website (http://www.dragongoserver.net/)

   Filters: HTTP::Proxy::HeaderFilter::simple
            HTTP::Proxy::BodyFilter::simple
            HTTP::Proxy::BodyFilter::tags

 * pdf.pl

   Save all PDF files in the pdf/ directory, and replace it with a
   HTML message saying "PDF file saved."
   
   Filters: HTTP::Proxy::HeaderFilter::simple
            HTTP::Proxy::Body::simple
            HTTP::Proxy::Body::save

 * yahoogroups.pl

   Removes the advertisment interruptions from Yahoo! Groups

   Filter: HTTP::Proxy::HeaderFilter::simple

 * https.pl

   Modify https:// links to http:// links that the proxy will
   recognise. The proxy will download the pages using SSL and
   will then be able to modify them with its filter stacks.

   Filters: HTTP::Proxy::HeaderFilter::simple
            HTTP::Proxy::BodyFilter::htmlparser

