[RndTbl] Simple HTTP server.

Sean Walberg sean at ertw.com
Tue Jul 25 15:50:15 CDT 2006

Real men write web servers in bash ;)



On 7/25/06, Sean Cody <sean at franticfilms.com> wrote:
> The HTTP protocol is so ridiculously simple yet usually implemented
> in a convoluted and complicated way (ie. Apache, IIS).
> If you ever wondered how a web server works but didn't care to read
> the spec (RFC1945) take a look at this 'simple' implementation in Perl.,
> This is a basic web server, written as the basis for a component in
> an embedded project I'm working on.
> I've since decided to re-implement it in C (perl + chroot = annoying)
> but the perl version would be a decent instructional tool.
> http://bitbucket.ca/misc/www.tgz
> I've implemented the bare minimum you need to make a web server.
> The bare minimum needed is:
>         GET             <-- Standard 'grab me a document' or CGI with
> appending key/
> values to the URL.
>         POST            <-- CGI without appending to URL
> For the hell of it... MIME types and Cookie support are also in there
> but only because they were easy.
> Just so it works 'out of the box,' I've included a simple site which
> tests most of the functionality (save for cookies, I know it works
> but too lazy to write a test case).
> Contents of the Tarball:
> www/www.pl <-- Web server... runs on port 8080 by default but open it
> up and take a gander.
> www/site/environment.cgi <-- sh shell script...spits out the current
> environment variables, ie CGI  not in Perl
> www/site/cgi_test.cgi <-- Perl script, simple GET/POST handling.
> www/site/index.html <-- simple web page
> www/site/gibson_for_dummies.jpg <-- included in simple web page and
> proves MIME types are working.
> The only use for this thing is if you really wanted to know how a web
> server worked and didn't want the pain of dealing with the RFC or the
> Apache source.
> I've tried to keep the code as clean and clear as possible (I know at
> least one other person that could read and understand it).
> If you find the damned thing useful then feel free to use it however
> you want.
> --
> Sean
> _______________________________________________
> Roundtable mailing list
> Roundtable at muug.mb.ca
> http://www.muug.mb.ca/mailman/listinfo/roundtable

Sean Walberg <sean at ertw.com>    http://ertw.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.muug.mb.ca/pipermail/roundtable/attachments/20060725/8105e599/attachment.html

More information about the Roundtable mailing list