lighttpd

lighttpd (prescribed pronunciation: "lighty") is an open-source web server optimized for speed-critical environments while remaining standards-compliant, secure and flexible. It was originally written by Jan Kneschke as a proof-of-concept of the c10k problem – how to handle 10,000 connections in parallel on one server, but has gained worldwide popularity. Its name is a portmanteau of "light" and "httpd".

Premise

The low memory footprint (compared to other web servers), small CPU load and speed optimizations make lighttpd suitable for servers that are suffering load problems, or for serving static media separately from dynamic content. lighttpd is free and open-source software and is distributed under the BSD license. It runs natively on Unix-like operating systems, with experimental support for Microsoft Windows.

Application support

lighttpd supports the FastCGI, SCGI and CGI interfaces to external programs, allowing web applications written in any programming language to be used with the server. As a particularly popular language, PHP performance has received special attention. Lighttpd's FastCGI can be configured to support PHP with opcode caches (like APC) properly and efficiently. Additionally, it has received attention from its popularity within the Python, Perl, Ruby and Lua communities. Lighttpd also supports WebDNA, the resilient in-memory database system designed to build database-driven websites. It is a popular web server for the Catalyst and Ruby on Rails web frameworks. Lighttpd does not support ISAPI.

Features

Limitations

  • Versions below 1.4.40 do not officially support sending large files from CGI, FastCGI, or proxies unless X-Sendfile is used. This limitation has been removed in lighttpd 1.4.40.
  • No HTTP/3 support

Usage

Lighttpd was used in the past by several high-traffic websites, including Bloglines, xkcd, Meebo, and YouTube. The Wikimedia Foundation also once ran Lighttpd servers. Due to relatively small size it's often used in embedded devices like GL.iNet and Turris Omnia.

It's also used by git as a HTTP server daemon.

See also

References

Further reading

Uses material from the Wikipedia article lighttpd, released under the CC BY-SA 4.0 license.