lighttpd 1.4.x
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jan Kneschke b9b8a46f40 allow to bind the server to a unix-domain socket 16 years ago
cygwin updated .cvsignore 17 years ago
debian get ready for 1.4.6 16 years ago
doc fixed typos 16 years ago
openwrt updated .cvsignore 17 years ago
src allow to bind the server to a unix-domain socket 16 years ago
tests updated test as we don't overwrite the Server-Header anymore 16 years ago
.cvsignore forgot .cvsignore in the move 17 years ago
AUTHORS moved everything below trunk/ and added branches/ and tags/ 17 years ago
COPYING moved everything below trunk/ and added branches/ and tags/ 17 years ago
ChangeLog added note to ChangeLog that NEWS is the new ChangeLog and updated NEWS file 16 years ago
INSTALL fixed link and version number 17 years ago ubuntu asked for dropping the debian/ dir from the source package, so we do 16 years ago
NEWS fixed streaming cgi output (like cgi-irc) 16 years ago
README moved everything below trunk/ and added branches/ and tags/ 17 years ago
SConstruct check if we need -ldl to get dlopen 16 years ago fixed message to print configure + make 17 years ago with_xml instead of with_xml2 and fixed passing of -D options for LFS 16 years ago strip debian/Makefile from the distribution 16 years ago automate the build-process again 17 years ago push options to configure script 17 years ago



a light httpd

:author: Jan Kneschke
:Date: $Date: 2004/11/03 22:25:54 $
:Revision: $Revision: 1.8 $

lighttpd a secure, fast, compliant and very flexible web-server
which has been optimized for high-performance environments. It has a very
low memory footprint compared to other webservers and takes care of cpu-load.
Its advanced feature-set (FastCGI, CGI, Auth, Output-Compression,
URL-Rewriting and many more) make lighttpd the perfect webserver-software
for every server that is suffering load problems.

the naming

lighttpd is a __httpd__ which is

- fast as __light__ning and
- __light__ when it comes to memory consumption and system requirements



- IPv4, IPv6


- HTTP/1.0 (
- HTTP/1.1 (
- HTTPS (provided by openssl)
- CGI/1.1 (http://CGI-Spec.Golux.Com/)
- FastCGI (

Advanced Features

- load-balanced FastCGI
(one webserver distributes requests to multiple PHP-servers via FastCGI)
- custom error pages (for Response-Code 400-599)
- virtual hosts
- directory listings
- streaming CGI and FastCGI
- URL-Rewriting
- HTTP-Redirection
- output-compression with transparent caching


- parses the Response-header and completes the HTTP-header accordingly
- Keep-Alive handling based on Content-Length header


- same speed as or faster than apache + mod_php4
- handles various PHP bugs in the FastCGI SAPI
- includes a utility to spawn FastCGI processes (necessary for PHP 4.3.x)

Security features

- chroot(), set UID, set GID
- protecting docroot

HTTP/1.1 features

- Ranges (start-end, start-, -end, multiple ranges)
- HTTP/1.0 Keep-Alive + HTTP/1.1 persistent Connections
- methods: GET, HEAD, POST
- Last-Modified + If-Modified handling
- sends Content-Length if possible
- sends Transfer-Encoding: chunk, if Content-Length is not possible
- sends Content-Type
- on-the-fly output compression (deflate, gzip)
- authentication: basic and digest

HTTP/1.1 compliance

- Sends 206 for Range Requests
- Sends 304 for If-Modified Requests
- Sends 400 for missing Host on HTTP/1.1 requests
- Sends 400 for broken Request-Line
- Sends 411 for missing Content-Length on POST requests
- Sends 416 for "out-of-range" on Range: Header
- Sends 501 for request-method != (GET|POST|HEAD)
- Sends 505 for protocol != HTTP/1.0 or HTTP/1.1
- Sends Date: on every requests

Intended Audience

- Ad-Server Front-Ends ("Banner-Schleuder")
- delivering small files rapidly
- php-servers under high load
(load-balancing the php-request over multiple PHP-servers)

Works with

It has been tested to work with

- IE 6.0
- Mozilla 1.x
- Konqueror 3.1
(for Keep-Alive/Persistent Connections, Accept-Encoding for PHP + gzip)
- wget
(for Resuming)
- acrobat plugin
(for multiple ranges)

Works on

lighttpd has been verified to compile and work on

- Linux
- FreeBSD
- NetBSD
- Solaris 8 + 9
- SGI IRIX 6.5

missing for HTTP/1.1 compliance
- parsing chunked POST request

Starting lighttpd

As daemon in the background: ::

$ lighttpd -f <configfile>

or without detaching from the console: ::

$ lighttpd -D -f <configfile>