Skip to content

tsegeron/webserv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7898bca · Oct 25, 2022

History

4 Commits
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022
Oct 25, 2022

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