This project has been created as part of the 42 curriculum by sabansac, arcornil.
Webserv is a networking project where the goal is to develop a fully working, HTTP/1.1-compliant web server in C++98. The server has to be non-blocking, support multiple servers/ports via the config and CGI.
You will need a .conf file, describing the configuration of the server. A default default.conf file is provided.
make./webserv [CONFIG FILE]Note
If no argument is given, webserv will try and open a default.conf file and use it as config.
- RFC 9112 - The Bible of the HTTP protocol
- RFC 3875 - The CGI/1.1 specification
- NGINX - The source code of NGINX, a trusted and widely used web server
AI tools (Anthropic's Sonnet 4.6) were used during this project for the following tasks:
- Upload & DELETE method webpage - Generated a webpage in order to have a practical interface to test out the Upload and DELETE method features.
- Debug / Streaming - Used LLM as assistance in order to debug streaming issues
- Theoretical explanation - Get a deeper and clearer understanding of the project's requirements