Multithreaded HTTP Server

Built a multithreaded HTTP server in C from scratch, with compression support in progress. Rewriting in Rust for improved memory safety and performance.

The Problem

Understanding how web servers work at a low level is fundamental for backend development. This project builds an HTTP server from scratch to learn about networking, concurrency, and protocol implementation.

Solution

This HTTP server implementation provides:

  • Full HTTP/1.1 compliance
  • Multithreading for concurrent request handling
  • Static file serving
  • Basic routing capabilities
  • Header parsing and response generation
  • Gzip compression support (in progress)
  • Rewriting in Rust for memory safety and performance

Screenshots

HTTP Server

Tech Stack

C Rust HTTP Networking Multithreading Systems Programming