This project will require you to write your own HTTP server from scratch in c++.
You'll have to follow the HTTP RFC, so you'll be able to test with a real web browser.
HTTP is one of the most widely used protocols on the Internet. Knowing how it works will be more than useful, even if you don't end up doing the web.
In this project we had to reimplement from scratch in C++ HTTP server following HTTP RFC:
- A request to your server should never be blocked indefinitely.
- Your server must be compatible with the web browser of your choice.
- Your HTTP response status codes must be accurate.
- Your server must have default error pages if none are provided.
- You should be able to serve a fully static website.
- The client should be able to download files.
- You need at least the GET, POST and DELETE methods.
- Your server must be able to listen on several ports (see Configuration file).
- Reimplement CGI