My favorites | Sign in
Project Home Downloads Issues Source
Project Information
Members

Introduction

OneHTTPD is a minimalist web server that is written in one self-contained source file. The primary motivation of the project is to write a small, portable executable to serve static files on a Windows desktop. It currently supports a (small) subset of HTTP/1.0.

Supported Platforms

It is tested on Linux (Debian Lenny) and Windows (XP). It should work on most Linux systems and Windows 2k+. It might work on some other Unices.

Building OneHTTPD

Note that the preferred build environment of the author is the MinGW (cross) compiler under Linux.

The code compiles under gcc and MinGW.

The source file, onehttpd.c, is actually a polyglot. It also serves as the Makefile, and the resource file. Therefore, to make, do the following:

$ ln -s onehttpd.c Makefile
$ ln -s onehttpd.c onehttpd.rc
$ make

If you wish to build OneHTTPD on Windows, take look at the Makefile part of the source and adopt it to your build environment. Note that it is strongly recommended that you use MinGW, Microsoft's compilers most likely won't work without significant amount of mangling with the source and project settings.

Development

Development is actually done locally using git. The svn repository at Google Code is just a glorified release management tool. It serves two purposes: firstly, to share source with those who don't use git, and secondly, to serve as an automatic commit squashing tool (to hide the embarrassing coding mistakes I make across commits :).

Documentation

Any other documentation (besides this page) should be in the source. The first few pages of the source should give you an idea.

Reporting Bugs

Please report any bugs in the Issues page.

Powered by Google Project Hosting