1 2======== 3lighttpd 4======== 5 6------------- 7a light httpd 8------------- 9 10:author: Jan Kneschke 11:Date: $Date: 2004/11/03 22:25:54 $ 12:Revision: $Revision: 1.8 $ 13 14:abstract: 15 lighttpd a secure, fast, compliant and very flexible web-server 16 which has been optimized for high-performance environments. It has a very 17 low memory footprint compared to other webservers and takes care of cpu-load. 18 Its advanced feature-set (FastCGI, CGI, Auth, Output-Compression, 19 URL-Rewriting and many more) make lighttpd the perfect webserver-software 20 for every server that is suffering load problems. 21 22:documentation: 23 http://wiki.lighttpd.net/ 24 25the naming 26---------- 27 28lighttpd is a __httpd__ which is 29 30- fast as __light__ning and 31- __light__ when it comes to memory consumption and system requirements 32 33Features 34-------- 35 36Network 37``````` 38 39- IPv4, IPv6 40 41Protocols 42````````` 43 44- HTTP/1.0 (http://www.ietf.org/rfc/rfc1945.txt) 45- HTTP/1.1 (http://www.ietf.org/rfc/rfc2616.txt) 46- HTTPS (provided by openssl) 47- CGI/1.1 (http://CGI-Spec.Golux.Com/) 48- FastCGI (http://www.fastcgi.com/devkit/doc/fcgi-spec.html) 49 50Advanced Features 51````````````````` 52 53- load-balanced FastCGI 54 (one webserver distributes requests to multiple PHP-servers via FastCGI) 55- custom error pages (for Response-Code 400-599) 56- virtual hosts 57- directory listings 58- streaming CGI and FastCGI 59- URL-Rewriting 60- HTTP-Redirection 61- output-compression with transparent caching 62 63FastCGI-Support 64``````````````` 65 66- parses the Response-header and completes the HTTP-header accordingly 67- Keep-Alive handling based on Content-Length header 68 69PHP-Support 70``````````` 71 72- same speed as or faster than apache + mod_php4 73- handles various PHP bugs in the FastCGI SAPI 74- includes a utility to spawn FastCGI processes (necessary for PHP 4.3.x) 75 76Security features 77````````````````` 78 79- chroot(), set UID, set GID 80- protecting docroot 81 82HTTP/1.1 features 83````````````````` 84 85- Ranges (start-end, start-, -end, multiple ranges) 86- HTTP/1.0 Keep-Alive + HTTP/1.1 persistent Connections 87- methods: GET, HEAD, POST 88- Last-Modified + If-Modified handling 89- sends Content-Length if possible 90- sends Transfer-Encoding: chunk, if Content-Length is not possible 91- sends Content-Type 92- on-the-fly output compression (deflate, gzip) 93- authentication: basic and digest 94 (http://www.ietf.org/rfc/rfc2617.txt) 95 96HTTP/1.1 compliance 97``````````````````` 98 99- Sends 206 for Range Requests 100- Sends 304 for If-Modified Requests 101- Sends 400 for missing Host on HTTP/1.1 requests 102- Sends 400 for broken Request-Line 103- Sends 411 for missing Content-Length on POST requests 104- Sends 416 for "out-of-range" on Range: Header 105- Sends 501 for request-method != (GET|POST|HEAD) 106- Sends 505 for protocol != HTTP/1.0 or HTTP/1.1 107- Sends Date: on every requests 108 109Intended Audience 110----------------- 111 112- Ad-Server Front-Ends ("Banner-Schleuder") 113 - delivering small files rapidly 114- php-servers under high load 115 (load-balancing the php-request over multiple PHP-servers) 116 117Works with 118---------- 119 120It has been tested to work with 121 122- IE 6.0 123- Mozilla 1.x 124- Konqueror 3.1 125 (for Keep-Alive/Persistent Connections, Accept-Encoding for PHP + gzip) 126- wget 127 (for Resuming) 128- acrobat plugin 129 (for multiple ranges) 130 131 132Works on 133-------- 134 135lighttpd has been verified to compile and work on 136 137- Linux 138- FreeBSD 139- NetBSD 140- Solaris 8 + 9 141- SGI IRIX 6.5 142 143missing for HTTP/1.1 compliance 144------------------------------- 145- parsing chunked POST request 146 147----------------- 148Starting lighttpd 149----------------- 150 151As daemon in the background: :: 152 153 $ lighttpd -f <configfile> 154 155or without detaching from the console: :: 156 157 $ lighttpd -D -f <configfile> 158 159 160