Writing an HTTP server from scratch
- A HTTP server, fully written in
C++98 - CGI-es for the server are written on
Python - Frontend is based on
bootstrap5 styles SQLiteis 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
Chunkedtransfer encoding is supported- Implemented methods:
HEAD,GET,POST,PUT,DELETE - Polling is implemented with
kqueue(kevent)
- Clone the repo
git clone git@github.com:tsegeron/webserv.git && cd webserv
- Build a project
make
- Launch the server
./webserv [config/deafult.config], you can pass your own config. If none is provided it will use the default one.*.configextension is essential.
./webserv config/deafult.config
- Click the URL the server is started on to open a page in browser (recommended to use Chrome)
- If
500. Server error is occuredtry configuring python interpreter to the 3.*v and try different URLs from config file.
This two-person project was done with mseastar.