PROJECT
 NAME
HTTP
 Proxy Server
DATE
 & STATUS
Click
 here
 for more information about this project
September / October /
 November 1998
Implemented
 as a semester project during my ERASMUS
 exchange year
 in Torino,
 Italy.
DESCRIPTION
 The goal of this project
 («HTTP Proxy Server») was to implement a simple,
 easy to understand and flexible HTTP
 proxy server. The main purpose of the proxy server is to be used as an
 HTML filter.
 Filtering tools can be "plugged-in" very easily, without modification
 of the
 proxy source code. Apart from filtering, the proxy server also caches
 documents on disk
 for faster access. The project was developed under
 UNIX (LINUX) using the gcc
 compiler.
Some
 research on the Web to find existing proxy servers
 in source form that could be used as a basis for this project yielded
 several results: GNU
 wwwoffle, wcol WWW
 Collector, Squid & Harvest.
 Most
 of the sources found were "professional" solutions, in the case of Squid
 for example consisting of more than 41'000 lines of code, or wwwoffle
 with 20'000
 lines. Much of that code has nothing to do with actual proxy
 functionality, and was of
 little study interest.
A
 posting in a newsgroup pointed the author of these lines to wcol-A,
 a source
 from 1994. This code was studied in depth and formed the bases for this
 project. The
 latest version at the time of writing, wcol-E from
 July 1998, had many extensions
 and wcol-E consisting of 32'000 (!) lines
 compared to just 3800 in wcol-A.
 To ease understanding, it was decided to keep the old A-version as a
 basis for this
 project's proxy server.
MORE
 INFORMATION
| Simple HTTP Proxy Server, project paper, 10 pages. Word format, 77 KB.  | 
|
| C Source code of Simple HTTP Proxy. Compiles under gcc/LINUX. 24 KB.  |