6 Excellent Linux/Open Source Web Servers
Apache, Nginx, Lighttpd
By Eric Geier
Here are six different web servers freely provided by the open source community for Linux, Windows, and other OSs:
Initially released in 1995, this is the most popular web server across the entire World Wide Web, currently used by around 60% of web domains. Its released under an Apache License, which requires preservation of the copyright notices and disclaimers, but doesn't require modified versions to be distributed using the same license. Though most prevalent on Unix-like operating system, it also runs on Windows, Mac OS X, and others.
Common languages supported by the Apache server include Perl, Python, Tcl, and PHP. The core functionality of the server can be extended with modules to add server-side programming language support, authentication schemes, and other features. Popular authentication modules include mod_access, mod_auth, mod_digest, and mod_auth_digest. Modules are also available for SSL/TLS support (mod_ssl), proxying (mod_proxy), URL rewriting (mod_rewrite), custom logging (mod_log_config), and filtering support (mod_include and mod_ext_filter).
When searching the web you'll find an endless slew of distributions and packages containing the Apache HTTP server along with other web applications, such as MySQL and PHP, for Linux, Windows, and other OSs. These can make it much easier to install and deploy a feature-rich web server.
Nginx (pronounced "engine X") is the second most popular open source web server currently on the Internet. Though development only started in 2002, its currently used by over 6% of web domains. It is a lightweight HTTP server, and can also serve as a reverse proxy and IMAP/POP3 proxy server. It's licensed under a BSD-like license. It runs on UNIX, GNU/Linux, BSD, Mac OS X, Solaris, and Windows.
Nginx was built with performance in mind, in particular to handle ten thousand clients simultaneously. Instead of using threads to handle requests, like traditional servers, Nginx uses an event-driven (asynchronous) architecture. Its more scalable and uses less, and more predictable, amounts of memory. In addition to the basic HTTP features, Nginx also supports name-based and IP-based virtual servers, keep-alive and pipelined connections, and FLV streaming. It can also be reconfigured and upgraded online without interruption of the client processing.
Lighttpd (pronounced "lighty") is the third most popular open source web server. This lightweight server was initially released in 2003 and currently serves less than 1% of web domains. It's licensed under a revised BSD license and runs on Unix and Linux.
Like nginux, lighttpd is a lightweight server built for performance with a goal of handling ten thousand clients simultaneously. It also uses an event-driven (asynchronous) architecture.