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. |