Skip to content

Latest commit

 

History

History
66 lines (48 loc) · 1.1 KB

File metadata and controls

66 lines (48 loc) · 1.1 KB

C++ HTTP Server

A multithreaded HTTP server built from scratch in C++ using the Winsock API. The server handles HTTP requests, serves static files along with standard HTTP response, designed to understand networking, HTTP Protocol, socket programming and concurrent client handling.

Features

  • TCP socket communication using Winsock
  • HTTP request parsing
  • Request line, headers, query parameters, and body parsing
  • Static file serving
  • MIME type detection
  • Multithreaded client handling
  • HTTP response generation

Tech Stack

  • C++17
  • Winsock2
  • TCP/IP
  • HTTP/1.1
  • Multithreading

Project Structure

HTTP-Server/
├── src/
├── include/
├── public/
├── main.cpp
├── Makefile
├── .gitignore
└── README.md

Build & Run

git clone https://github.com/Vaibhavkshyp/http-server-cpp.git
cd http-server-cpp
make
./server

Then open:

http://localhost:5000

Key Concepts

TCP Sockets • HTTP • Request Parsing • Multithreading • File I/O • C++17

Author

Vaibhav Kashyap