Skip to content

42-ws/webserv

Folders and files

NameName
Last commit message
Last commit date
Oct 12, 2024
Oct 10, 2024
Sep 29, 2024
Oct 12, 2024
Oct 11, 2024
Oct 12, 2024
Oct 12, 2024
Oct 12, 2024
Jun 26, 2024
Oct 7, 2024
Oct 9, 2024
Oct 12, 2024
Oct 12, 2024
Aug 24, 2024

Repository files navigation

42 Webserver

42Webserv

OVERVIEW

A Simple Webserver Implementation in C++

USAGE

make run

to use default configuration file or

make run PATH_CONFIG=[configuration file] 

to use optional configuration file

IMPLEMENTATION

You can use HTTP methods

  • GET, POST, DELETE to ordinary files
  • GET, POST to cgi files

You use GET to retrieve files from the server, POST to upload files or echo the messages you sent, and DELETE to remove files you have uploaded.
Additionally, you can execute CGI scripts using GET, or use POST to execute them with the messages you sent.

You can configure the following:

  • server names
  • listen host:port
  • uri routing
  • default error pages
  • client max body size
  • accepted HTTP methods
  • HTTP redirection
  • alias
  • directory listing
  • default page
  • cgi extension
  • file upload directory

This server is compatible with FireFox

TESTS

make test

There are unit tests and integration tests in test directory

REFERENCE

  1. https://datatracker.ietf.org/doc/html/rfc9112
  2. https://datatracker.ietf.org/doc/html/rfc9110
  3. https://datatracker.ietf.org/doc/html/rfc3875
  4. https://datatracker.ietf.org/doc/html/rfc4918
  5. https://datatracker.ietf.org/doc/html/rfc7578