webserv

This project required us to handle HTTP requests, parse and interpret configuration files, and serve static content to clients. We have collaborated closely with the talented @mcipolla to create a robust and efficient web server.

Our Webserv implementation goes beyond the mandatory requirements, exceeding all tests. We have implemented various features, including:

  • Support for multiple HTTP methods, including GET, POST, HEAD, DELETE and PUT.
  • Efficient handling of HTTP status codes and error responses.
  • Parsing and processing of request headers and query parameters.
  • Seamless serving of static files, such as HTML, CSS, JavaScript, and image files.
  • Comprehensive configuration file support, allowing fine-tuning of server behavior.
  • Concurrent handling of multiple client connections using non-blocking I/O.
  • Advanced features, such as support for chunked transfer encoding and persistent connections.

We have thoroughly tested our Webserv implementation, ensuring its stability, performance, and compliance with web standards for HTTP/1.1.