Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/immunant/lighttpd-rust
C2Rust transpiled version of lighttpd
https://github.com/immunant/lighttpd-rust
Last synced: 2 months ago
JSON representation
C2Rust transpiled version of lighttpd
- Host: GitHub
- URL: https://github.com/immunant/lighttpd-rust
- Owner: immunant
- License: bsd-3-clause
- Created: 2022-06-17T22:38:35.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-03T06:32:42.000Z (8 months ago)
- Last Synced: 2024-05-03T12:17:35.869Z (8 months ago)
- Language: Rust
- Size: 2.99 MB
- Stars: 2
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
README
========
lighttpd
========-------------
a light httpd
-------------:abstract:
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.:documentation:
https://redmine.lighttpd.net/projects/lighttpd/wiki/the naming
----------lighttpd is a __httpd__ which is
- fast as __light__ning and
- __light__ when it comes to memory consumption and system requirementsFeatures
--------Network
```````- IPv4, IPv6
Protocols
`````````- HTTP/2 (https://tools.ietf.org/rfc/rfc7540.txt)
- HTTP/1.1 (https://tools.ietf.org/rfc/rfc2616.txt)
- HTTP/1.0 (https://tools.ietf.org/rfc/rfc1945.txt)
- HTTPS (via one of openssl, BoringSSL, LibreSSL, mbedTLS, wolfSSL, GnuTLS, NSS)
- CGI/1.1 (https://tools.ietf.org/html/rfc3875.txt)
- FastCGI (http://www.fastcgi.com/devkit/doc/fcgi-spec.html)Advanced Features
`````````````````- load-balanced FastCGI, SCGI, reverse-proxy, socket proxy, websocket tunnel
(one webserver distributes requests to multiple PHP-servers via FastCGI)
- streaming FastCGI, SCGI, reverse-proxy, socket proxy, websocket tunnel
- custom error pages (for Response-Code 400-599)
- virtual hosts
- directory listings
- URL-Rewriting
- HTTP-Redirection
- output-compression with transparent cachingFastCGI-Support
```````````````- parses the Response-header and completes the HTTP-header accordingly
- Keep-Alive handling based on Content-Length headerPHP-Support
```````````- 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 docrootHTTP/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://www.ietf.org/rfc/rfc2617.txt)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 requestsIntended 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
- OpenBSD
- Solaris 8 + 9
- SGI IRIX 6.5
- Windows (when compiled under cygwin)
(and will likely compile and run on most unix-like systems with C99 compiler)-----------------
Starting lighttpd
-----------------As daemon in the background: ::
$ lighttpd -f
or without detaching from the console: ::
$ lighttpd -D -f