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 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 * perlmonks.pl Redirect all requests to perlmonks.com and perlmonks.org to perlmonks.org, thus keeping connection information intact (all cookies will point to a single web site). This code was used as a starting point for the "Rewrite the web" hack in Perl Hacks (O'Reilly 2006). Filter: HTTP::Proxy::HeaderFilter::simple