HTTPit Web Server
HTTPit is a tiny multi-threaded executable java based HTTP server (under 10kb). It was built as a simple challenge to myself, how much functionality could be coded into a .jar file under 10Kb in size. It supports SSI and CGI (to the point that PHP applications function correctly) and supports both GET and POST request, 52 document types, virtual hosting ….
:. System Requirements
This server uses the regular expressions support added in JDK1.4.x and therefore requires that version as a minimum.
:. Download
:. Features
:. Usage
java -jar HTTPit.jar [options]
Options include:
:. Example usages
java -jar HTTPit.jar mime.tar=application/x-tar
Launch with additional support for files of type .tar
java -jar HTTPit.jar cgi.php=/usr/local/bin/php index.files=index.html,index.php
Launch with support for .php files using CGI and include index.php as a valid index file.
java -jar HTTPit.jar webroot.www.foo.com=./webroot2
Virtual host www.foo.com using the ./webroot2 folder as its root directory.
:. Static Page Load Test
The static page load test results for this server detailed below involved testing 10 concurrent users against a simple html page (using the openload tool, http://openwebload.sourceforge.net/ ).
openload http://192.168.0.100:8000/index.html 10
- Total TPS: 36.08
- Avg. Response time: 0.277 sec.
- Max Response time: 1.442 sec
- Total Requests: 68988
- Total Errors: 0
:. CGI Load Test
The CGI load test results for this server detailed below involved testing 10 concurrent users against a simple perl based CGI script (using the openload tool).
openload http://192.168.0.100:8000/cgi-bin/counter.cgi 10
- Total TPS: 29.87
- Avg. Response time: 0.335 sec.
- Max Response time: 1.760 sec
- Total Requests: 57403
- Total Errors: 0
