WebServerbecause reinventing the wheel is an optionFeatures:HTTP 1.1 compliantNever block and client can be bounced properlyNon-blocking I/O operationsListen to multiple IPsListen to multiple portsMethods: GET, POST, DELETEAble to upload filesAble to serve a fully static website.Supports multiple CGIs.Custom error pagesHigh availablityResilient! Server never dies 🙂poll() as the default event monitorUsage:$ make -C server/ $ ./webserver server/webserver.confConfigue file setup:server: host: 127.0.0.1port: 5050server_name: example.comlocation: allowed_method: get delete postpath: "/route"root: "/root"index: index.html index.php ..upload: "upload/path"auto_index: on || offcgi: php: "path/to/php-cgi"py: "path/to/python"perl: "path/to/perl"redirection: status: redirection_codeurl: 'url'error_page: status_code: custom_error_page.htmlAuthors:Ayoub MaatouchMarouane OugnouElMehdi Mallah