A lightweight educational HTTP server written in C++, implementing its own routing system, controllers, DTOs, models, and static file handling. The project is structured similarly to a minimal MVC framework and supports multithreading via a ThreadPool.
- Custom HTTP server written from scratch
- Routing via controllers
- Automatic controller registration
- DTO system for request/response handling
- Static file serving (HTML, CSS, images)
- ThreadPool for concurrent request processing
- Python client for testing (optional)
Open a terminal in the project root directory and run:
Build Project
g++ -std=c++17 -pthread main.cpp Controllers/*.cpp DTO/*.cpp Models/*.cpp ThreadPool.cpp Task.cpp -o http_serverRun Project
./http_serverThe server will run on http://localhost:8888