http://www.linux.com/news/software/applications/807641-which-light-weight-open-source-web-server-is-right-for-you
If you use Linux, most likely Apache is your web server of 
choice. Apache is a great choice. It’s incredibly powerful, very 
reliable, and secure. There may, however, be certain deployments that 
either do not need all of the features found in Apache, do not have the 
resources to support Apache (such as in the case of an embedded system),
 or need something easier to manage. If that’s the case, fear not ─ 
there are plenty of light weight, open source, web servers out there 
ready to meet and exceed your needs.
Let’s take a look at some of the best small footprint web servers available and find out which one is right for you.
 Nginx
Nginx
Nginx has become 
one of the most important web servers over the last couple of years. 
There’s a reason for that. Instead of using the standard threaded- or 
process-oriented architecture, it uses a scalable, event-driven 
(asynchronous) architecture. So not only is it incredibly light weight, 
it’s highly scalable and memory usage is far better suited for limited 
resource deployments. Nginx also handles simple load balancing, fault 
tolerance, auto-indexing, virtual servers (both name- and IP-based), 
mod_rewrite, access control, and much more. Nginx can also serve as a 
reverse proxy and an IMAP/POP3 proxy server.
Surprisingly, Nginx powers a few very high-profile sites, such as: Netflix, Hulu, Pinterest, Wordpress.com, and AirBnB.
Who is Nginx right for? The nice thing about this 
particular light weight HTTPD daemon is that it doesn’t perform like a 
lightweight server. Not only does it run with minimal resources, it 
offers plenty of optional modules and addons. You can find pre-built packages
 for Linux and BSD for easy installation. So if you need a powerhouse 
server, in a lighter weight package, Nginx is the server for you.
Nginx comes in at a 10 MB installation (versus the Apache 
30 MB installation) and can give you up to a 35 percent performance 
increase (versus Apache).
 Lighttpd
Lighttpd
Lighttpd is light ─ 
fly light in fact ─ and is the perfect server for any machine suffering 
from load problems. Lighttpd is also an ideal candidate for embedded 
systems. In fact, one of the most popular embedded systems on the market
 now, Raspberry Pi, is an ideal candidate for lighttpd.
Lighttpd offers effective memory management of cpu load, 
FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting, and much more. 
Although Lighttpd can handle ten thousand simultaneous clients, chances 
are you won’t be running a massive site with this lightweight server. 
Lighttpd’s FastCGI can be configured to efficiently support PHP with 
opcode caches. This “flyweight” server also supports WebDNA (server-side
 scripting language with an embedded database system), so you can use 
lighttpd on an embedded system to create dynamic, database-driven 
websites.
Who is lighttpd right for? If you’re looking to create an 
embedded system (with far less available resources) that includes a web 
component, Lighttpd is most likely what you want. Lighttpd is very 
simple to use and set up. Configuration of this particular server is 
handled in a single .conf file.
 Monkey
Monkey
Monkey HTTP Daemon
 is another web server aimed at the embedded systems market. Monkey 
features the likes of virtual hosts, indented configuration, plugins 
support, C API Interface, and HTTP/1.1. This is also another 
asynchronous (event-driven) web server. Monkey’s plugins aren’t nearly 
as extensive as other servers, but you can find additional support for: 
CGI, SSL, security, log writer, directory listing, and shell (command 
line). 
Monkey can serve as a stand-alone server for static content
 or, thanks to scripting languages such as PHP, Perl, Python, and Lua), 
it can provide a FastCGI interface to deliver dynamic content. Monkey 
also provides a C framework, called Duda I/O, for more sophisticated, scalable web services (such as big data, home automation, and real-time bidding markets).
The binary size of Monkey is around 100 KB on installation 
and around 250 KB on runtime, so it’s incredibly small. Monkey supports 
ARM, x86, and x64 architecture, so it’s available for multiple platforms
 and embedded systems.
Who is Monkey HTTP Daemon right for? Anyone needing a web 
server that is extremely simple to install and setup on an embedded 
device. For ease of use and static-content performance, Monkey is hard 
to beat.
 Cherokee
Cherokee
Cherokee is a 
user-friendly, lightweight, cross-platform (Linux, Mac, Solaris, BSD) 
web server that includes plenty of modern features. Out of the box, 
you’ll find Cherokee supports: FastCGI, SCGI, PHP, uWSGI, SSI, CGI, 
LDAP, TLS/SSL, HTTP proxying, video streaming, content caching, traffic 
shaping, and much more. This particular server also has a very 
user-friendly web-based setup tool.
Cherokee also offers a small listing of web application 
framework support. Included applications are: PHP, Ruby on Rails, 
ColdFusion, GlassFish, and Django.
There is one downfall with Cherokee ─ and this could be a 
deal breaker for some. The last released update was Oct. 2011. That’s 
seriously out of date. The server still works, but as far as getting 
security updates and patches ─ good luck.
Who is Cherokee right for? If you’re looking for an easy to
 setup and use web server that happens to be cross-platform, but aren’t 
concerned with using out-of-date software, Cherokee might be right for 
you.
 Hiawatha
Hiawatha
Hiawatha 
is a lightweight, open source web server with a focus geared toward 
security and ease of use. This particular light weight server isn’t 
designed for embedded systems, but as a fully-functioning, dynamic web 
server. Some of the features of this particular server include: load 
balancing, FastCGI, large file support, reverse proxy, chroot support, 
rewrite support, SSL/TLS, basie/digest HTTP authentication, IPv6 
support, virtual hosting, and much more.
But what about the security? Via built-in technology, 
Hiawatha can stop SQL injections, XSS and CSRF attacks, control external
 image linking, ban potential hackers and limit the runtime of CGI
 applications and exploit attempts. There is also a built-in monitoring 
tool that allows you to keep tabs on all of your web servers.
Even with this solid feature set, Hiawatha remains an ideal
 option for embedded systems ─ especially those that require added 
security.
Who is Hiawatha right for? If you’re looking for a robust 
web server for either a standard setup or embedded system, and require a
 higher level of built-in security, Hiawatha is the server for you.
When deciding on a web server, it’s very tempting to go 
with the most widely used system on the planet ─ Apache. But when you 
have a need that Apache can’t fill, it’s good to know there are 
alternatives available. Be it for an embedded system, a standard server,
 or a test environment, open source has your web server needs covered. 
Give one of these systems a try and see if they don’t meet or exceed 
your expectations.
 
 

No comments:
Post a Comment