Skip to content

jackwthake/Web-Server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web-Server

CodeQL
A small light-weight multithreaded HTTP server

Building

clone https://github.com/jackwthake/Web-Server
cd Web-Server
make bin/serve

Request Processing

  1. New request is recieved in server_listen_loop()
  2. server_listen_loop() opens the request, queueing a new job to process the request
  3. Free thread picks up the job
  4. handle_connection() retrieves basic information about the request
  5. handle_connection() attempts to query the router for a matching path
  6. handle_connection() sends the appropriate data back to the client
  7. handle_connection() closes out the client socket

TO-DO

  • Serve HTTP requests
  • File logging
  • Automatically route files
  • Multithreaded handling of requests
  • Thread pooling
  • Use OpenSSL to serve HTTPS requests
  • Server side JSON Parsing

About

Small Web server

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published