Comparison of lightweight web servers
Encyclopedia
Lightweight web servers are web server
Web server
Web server can refer to either the hardware or the software that helps to deliver content that can be accessed through the Internet....

s which have been designed to run with very small resource overhead because of hardware, environment, or simply for the challenge of it.

Many of these servers have been created as a mental exercise to determine if a modern webserver could be written to run on limited resources such as those provided in a graphing calculator
Graphing calculator
A graphing calculator typically refers to a class of handheld calculators that are capable of plotting graphs, solving simultaneous equations, and performing numerous other tasks with variables...

, a Commodore 64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...

, or in 64 kB (64 KiB
Kibibyte
The kibibyte is a multiple of the unit byte for quantities of digital information. The binary prefix kibi means 1024; therefore, 1 kibibyte is . The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission in 1999 and has been accepted for use...

) total of memory. Others have been written as commercial or open source endeavors to create webservers with low overhead for embedded systems
Embedded HTTP server
An embedded HTTP server is a component of a software system that implements the HTTP protocol. Examples of usage within an application might be:* To provide a thin-client interface for a traditional application.....

 (network router configuration pages) or low memory requirements.

Overview

A list of notable lightweight web servers follows:
Server Creator/Developer
Software developer
A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, developing, and testing software. A software developer may take part in design, computer programming, or software project management...

Operating Systems
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

Development Language
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....

Free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

Software license Size (kB) of .tar
Tar (file format)
In computing, tar is both a file format and the name of a program used to handle such files...

 file
Last release version Release date
Boa
Boa (web server)
Boa is an open-source, small-footprint web server that is suitable for embedded applications. Originally written by Paul Phillips, it is now maintained by Larry Doolittle and Jon Nelson.Slashdot and Fotolog use Boa to serve images....

Paul Phillips
Paul Phillips (poker player)
Paul Phillips is an American entrepreneur and poker player.-Programming:Phillips wrote the Boa web server while attending the University of California, San Diego, but no longer maintains it...

Unix C, Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...

GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 1 or above
870 0.94.14rc21 2005-02-23
Cherokee
Cherokee (Webserver)
Cherokee is an open-source Cross-platform Web server that runs on Linux, BSD variants, Solaris, Mac OS X, and Microsoft Windows. It is a lightweight, high-performance Web Server/reverse proxy licensed under the GNU General Public License. Its goal is to be fast and fully functional yet still light...

Álvaro López Ortega Windows, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

, GNU/Linux, Solaris, BSD
C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

16440 1.0.18 2011-01-19
Hiawatha
Hiawatha webserver
Hiawatha is a secure webserver available for multiple platforms. It has been developed by Hugo Leisink since 2002.-History:Hiawatha started in January 2002 as a very small webserver, suitable for servers with old hardware. It was written for internet servers in student houses in Delft...

Hugo Leisink Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, BSD, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

, Windows, Haiku os
C GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 2
1200 7.8.2 2011-11-18
HTTP File Server
HTTP File Server
HTTP File Server, otherwise known as HFS, is a free web server specifically designed for publishing and sharing files.The complete feature set differs from other web servers; it lacks some common features, like CGI, but includes, for example, counting file downloads. It is even advised against...

Massimo Melina (aka rejetto) Windows Delphi GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

600 2.2f 2009-02-17
IIS Express Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...

Windows ? Closed source
Proprietary software
Proprietary software is computer software licensed under exclusive legal right of the copyright holder. The licensee is given the right to use the software under certain conditions, while restricted from other uses, such as modification, further distribution, or reverse engineering.Complementary...

3985 7.5 2011-01-18
KLone
KLone (web server)
KLone is an open-source, small-footprint web server that is suitable for embedded applications.As of May 2011, KLone has :* Core features** Multiplatform HTTP and HTTP/S** Small footprint...

Koan Logic Srl Most platforms C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

130 2.4.0 2011-05-02
lighttpd
Lighttpd
lighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...

Jan Kneschke Unix, Linux, Windows C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

BSD
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

3520 1.4.29 2011-07-03
Mongrel Zed A. Shaw Unix, Linux, Windows Ruby
Ruby (programming language)
Ruby is a dynamic, reflective, general-purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was first developed and designed by Yukihiro "Matz" Matsumoto...

GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 2 or Ruby License
400 1.1.5 2008-05-22
NanoHTTPD
NanoHTTPD
NanoHTTPD is an open-source, small-footprint web server that is suitable for embedded applications, written in the Java 1.1 programming language. The source code consists of a single .java file...

Jarno Elonen Java enabled, including mobile Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

Modified BSD
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

33 1.24 2011-08-04
nginx
Nginx
nginx is a Web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a BSD-like license and it runs on Unix, Linux, BSD variants, Mac OS X, Solaris, and Microsoft Windows.- Overview...

Igor Sysoev Unix-like, Windows C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

BSD
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

3960 1.0.6 2011-09-05
Perlbal
Perlbal
Perlbal is a Perl-based reverse proxy load balancer and web server. Perlbal is maintained by a group connected to Danga Interactive. The program is in common use by large web sites to distribute the load over a number of servers....

Brad Fitzpatrick
Brad Fitzpatrick
Bradley Joseph "Brad" Fitzpatrick , is an American programmer. He is best known as the creator of LiveJournal and is the author of a variety of free software projects such as memcached....

Any OS with Perl Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...

GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 / Artistic
Artistic License
The Artistic License refers most commonly to the original Artistic License , a software license used for certain free and open source software packages, most notably the standard Perl implementation and most CPAN modules, which are dual-licensed under the Artistic License and the GNU General Public...

590 1.73 2009-10-13
TJWS Dmitriy Rogatkin Java enabled, including mobile Java
Java
Java is an island of Indonesia. With a population of 135 million , it is the world's most populous island, and one of the most densely populated regions in the world. It is home to 60% of Indonesia's population. The Indonesian capital city, Jakarta, is in west Java...

BSD 105688 1.93 2011-10-10
MochiWeb ? Erlang VM Erlang
Erlang
Erlang may refer to:* Agner Krarup Erlang , a mathematician and engineer after whom several concepts are named** Erlang , a unit to measure traffic in telecommunications or other domains...

? ? ? ?
thttpd
Thttpd
thttpd is an open source software web server from ACME Laboratories, designed for simplicity, a small execution footprint and speed. thttpd is single-threaded and portable: it compiles cleanly on most Unix-like operating systems, including FreeBSD, SunOS 4, Solaris 2, BSD/OS, Linux, and OSF/1...

Acme Labs Unix C BSD
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

406.0 2.25b 2003-12-29
Tntnet
Tntnet
Tntnet is a free in C++ coded Web server, which enables other C++-programs to bundle requests modules. This way, users are enabled to develop Web applications in C++...

Tommi Mäkitalo Unix C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

LGPL ? ? ?
UIP
UIP (micro IP)
The uIP is an open source TCP/IP stack capable of being used with tiny 8- and 16-bit microcontrollers. It was initially developed by Adam Dunkels of the "Networked Embedded Systems" group at the Swedish Institute of Computer Science, licensed under a BSD style license, and further developed by a...

Adam Dunkels Embedded 8bit C ? ? ?
Server Creator/Developer
Software developer
A software developer is a person concerned with facets of the software development process. Their work includes researching, designing, developing, and testing software. A software developer may take part in design, computer programming, or software project management...

Operating Systems
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

Development Language
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....

Open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

Software license Size (kB) of .tar
Tar (file format)
In computing, tar is both a file format and the name of a program used to handle such files...

 file
Last release version Release date

Operating system support

Server Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

BSD Solaris QNX
QNX
QNX is a commercial Unix-like real-time operating system, aimed primarily at the embedded systems market. The product was originally developed by Canadian company, QNX Software Systems, which was later acquired by Canadian BlackBerry-producer Research In Motion.-Description:As a microkernel-based...

standalone software
Boa
Boa (web server)
Boa is an open-source, small-footprint web server that is suitable for embedded applications. Originally written by Paul Phillips, it is now maintained by Larry Doolittle and Jon Nelson.Slashdot and Fotolog use Boa to serve images....

Cherokee
Cherokee (Webserver)
Cherokee is an open-source Cross-platform Web server that runs on Linux, BSD variants, Solaris, Mac OS X, and Microsoft Windows. It is a lightweight, high-performance Web Server/reverse proxy licensed under the GNU General Public License. Its goal is to be fast and fully functional yet still light...

Hiawatha
Hiawatha webserver
Hiawatha is a secure webserver available for multiple platforms. It has been developed by Hugo Leisink since 2002.-History:Hiawatha started in January 2002 as a very small webserver, suitable for servers with old hardware. It was written for internet servers in student houses in Delft...

HTTP File Server
HTTP File Server
HTTP File Server, otherwise known as HFS, is a free web server specifically designed for publishing and sharing files.The complete feature set differs from other web servers; it lacks some common features, like CGI, but includes, for example, counting file downloads. It is even advised against...

IIS Express
KLone
KLone (web server)
KLone is an open-source, small-footprint web server that is suitable for embedded applications.As of May 2011, KLone has :* Core features** Multiplatform HTTP and HTTP/S** Small footprint...

lighttpd
Lighttpd
lighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...

Mongrel
NanoHTTPD
NanoHTTPD
NanoHTTPD is an open-source, small-footprint web server that is suitable for embedded applications, written in the Java 1.1 programming language. The source code consists of a single .java file...

nginx
Nginx
nginx is a Web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a BSD-like license and it runs on Unix, Linux, BSD variants, Mac OS X, Solaris, and Microsoft Windows.- Overview...

Perlbal
Perlbal
Perlbal is a Perl-based reverse proxy load balancer and web server. Perlbal is maintained by a group connected to Danga Interactive. The program is in common use by large web sites to distribute the load over a number of servers....

TJWS
thttpd
Thttpd
thttpd is an open source software web server from ACME Laboratories, designed for simplicity, a small execution footprint and speed. thttpd is single-threaded and portable: it compiles cleanly on most Unix-like operating systems, including FreeBSD, SunOS 4, Solaris 2, BSD/OS, Linux, and OSF/1...

Tntnet
Tntnet
Tntnet is a free in C++ coded Web server, which enables other C++-programs to bundle requests modules. This way, users are enabled to develop Web applications in C++...

UIP
UIP (micro IP)
The uIP is an open source TCP/IP stack capable of being used with tiny 8- and 16-bit microcontrollers. It was initially developed by Adam Dunkels of the "Networked Embedded Systems" group at the Swedish Institute of Computer Science, licensed under a BSD style license, and further developed by a...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK