Skip to content

tsegeron/webserv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webserv

Writing an HTTP server from scratch

Description

  • A HTTP server, fully written in C++98
  • CGI-es for the server are written on Python
  • Frontend is based on bootstrap5 styles
  • SQLite is used to save logins, passwords, comments
  • Cookies and session management are supported
  • HTTP response status codes are accurate
  • Default error pages are provided
  • Clients are able to upload files
  • Autoindexing is supported
  • Chunked transfer encoding is supported
  • Implemented methods: HEAD, GET, POST, PUT, DELETE
  • Polling is implemented with kqueue (kevent)

How to use

  1. Clone the repo
git clone [email protected]:tsegeron/webserv.git && cd webserv
  1. Build a project
make
  1. Launch the server ./webserv [config/deafult.config], you can pass your own config. If none is provided it will use the default one. *.config extension is essential.
./webserv config/deafult.config
  1. Click the URL the server is started on to open a page in browser (recommended to use Chrome)
  2. If 500. Server error is occured try configuring python interpreter to the 3.*v and try different URLs from config file.

Credits

This two-person project was done with mseastar.

Releases

No releases published

Packages

No packages published