← All projects
HTTP Server2024Solo Engineer

WebServ

An HTTP/1.1 server built from scratch in C++ to understand the protocol layer.

C++

01 · Problem

What made this interesting

Implementing a conformant HTTP server requires parsing raw requests, managing persistent connections, handling CGI, and serving static content — all in C++ without external HTTP libraries.

02 · Approach

How I solved it

Built a non-blocking I/O server using poll/select, a modular request parser, a route configuration system, and CGI execution via process forking.

03 · Result

What came out of it

A functional HTTP/1.1 server serving static files and executing CGI scripts, built entirely from the socket layer up.

04 · Highlights

Key technical details

Non-blocking I/O multiplexing
RFC-compliant request parsing
CGI process execution
Configurable routing

Next case study

Inception

A production-like Docker infrastructure using multiple isolated services.