presents:

JLHTTP - Java Lightweight HTTP Server (Web Server)

Download

Download the latest release: (What's new?)

JLHTTP 1.1 (includes source code) (69K)

Previous releases:

JLHTTP 1.0 (includes source code) (62K)

What is the Java Lightweight HTTP Server?

The Java Lightweight HTTP Server is an open-source implementation of an HTTP Server (a.k.a. Web Server). It is lightweight, i.e. small and efficient, yet provides various useful features commonly found in heavier HTTP servers. It can be used both as a standalone web server, and as an easily embedded server for integration into existing applications. This is commonly used to provide a convenient GUI (Graphical User Interface) which can be viewed across the network in a cross-platform manner from any computer with a web browser (just about all of them).

This server is 'conditionally compliant' with RFC 2616 ("Hypertext Transfer Protocol -- HTTP/1.1"), which means it supports all functionality required by the RFC, as well as some of the optional functionality. Among the features are virtual hosts, partial content (i.e. download continuation), file-based serving, automatic directory index generation, GET/HEAD/POST/OPTIONS/TRACE method support, multiple contexts per host, file upload support and more.

How do I use the Java Lightweight HTTP Server?

This server is intentionally written as a single source file, in order to make it as easy as possible to integrate into any existing project - by simply adding this single file to the project sources. It can also be used like any other library, by including the jar file in the application classpath.

See the javadocs in the source file for the full API details. Examining the source code of the main method can be a good starting point for understanding how to embed the server in your application, as well.

The server can also be run as a standalone application from the command line, to serve files under a specified directory with no need for additional configuration.

What's New?

In version 1.1:

In version 1.0:

License

The JLHTTP Package is provided under the GNU General Public License agreement.
For non-GPL commercial licensing please contact the author.

Donate

Please help support this project by making a donation. These donations are not meant to make the author rich, but to try and offset the costs of creating and maintaining the project. Any amount will help!

Contact

you can contact the author via e-mail at:

support@freeutils.net

Please write in to report bugs, problems, suggestions, ideas, questions, answers, source code queries and especially just to let me know you've found the JLHTTP Package useful. Getting feedback will encourage me to continue development and add some advanced features I have in mind...

For updates and additional information, you can always visit the website at:

www.freeutils.net