VPSTuts > Linux Web Servers

Linux Web Servers

There are plenty of Linux web servers to choose from. Some offer specialised features, others are considered more ‘run of the mill’, however they all do one thing… deliver web content to client devices and, more often than not, a person using the device.

In this article we’ll go through some of the most popular web servers available for the Linux operating system (OS).

Apache

apache web server

The Apache Web Server

One of the oldest web servers around, Apache was responsible for enabling the huge explosion of internet web server growth in the 1990’s and early 21st century. Officially known as Apache HTTP Server, it is free for private and commercial use under the Apache License 2.0.

Apache has become the ‘de-facto’ standard for most people when considering deploying a web server. It is available on multiple operating systems (OS), which can be an attractive feature to those that are not yet sure which OS they are going to use for a production environment.

Due to the huge user base of Apache you can be almost guaranteed that any ‘off the shelf’ web application you plan to use for your project will be compatible with it, with a wealth of available online support and documentation.

Some of the features Apache supports include:

  • loadable modules
  • SSL / TLS
  • proxy
  • URL rewrite
  • Compression
  • Logging
  • Virtual hosts

Nginx

Nginx web server logo

The Nginx web server

Another web server which has quite a large following, due to its versatility, low resource overheads and ability to handle a great number of simultaneous connections. Nginx (pronounced ‘engine x’) is a free web server released under the ‘2-clause BSD’ license.

One of the issues that many people new to Nginx have is that it does not support .htaccess files like Apache does. This can cause issues with many ‘off the shelf’ web applications and requires often requires manual intervention to get things working.

Nginx supports many features, including:

  • SSL / TLS
  • reverse proxy
  • proxy for HTTP, HTTPS, POP3, IMAP and SMTP
  • compression
  • URL rewriting
  • bandwidth throttling
  • load balancing
  • virtual hosts

 Lighttpd

Lighttpd Web Server logo

The Lighttpd Web Server

Renowned for its low memory requirements and all round low resource requirements Lighttpd (referred to as ‘lighty’) is great for serving static content. It is often directly compared with Nginx, due to the shared objectives of both projects. The two most obvious being the c10k problem and high static content performance.

Some feature of Lighttpd include:

  • SSL / TLS
  • chroot
  • load balancing
  • LDAP authentication
  • Virtual hosts
  • compression
  • loadable modules
  • <1MB RAM

Which Is The Best Web Server?

There is often hot debate regarding which web server is faster, Apache v Nginx v Lighttpd.

In some instances one web server software shows better performance than others. Much depends on the type of content the web server is serving and how it is configured. In general Apache is considered better for dynamic pages and Nginx for static, however things can often change with the release of new software versions.

For large web server deployments it is often better to not concentrate too much on a single web server platform, but rather on using multiple servers to spread the load and employing additional web performance techniques like severing static content from a sub-domain or sub-domains. For example, you may find it better to use Apache from dynamic based scripts and serve your static content, such as images, css, javascript, etc. from Nginx or Lighttpd servers.