Skip to content

vvaucoul/Webserv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webserv

Project

The objective of the project was to recreate a complete HTTP server according to RFC standards with a nginx model.
We therefore had to:

  • Manage multiple client requests
  • Parse these requests
  • Send an adequate response

Usage

  • Clone Repository
git clone https://github.com/vvaucoul/Webserv && cd Webserv
  • Compilation
make
  • Start Web Server
./webserv [Configuration File]

Default Port: 8081
Default ConfigFile:

server {
	host 127.0.0.1;
	port 8081;
	server_name webserv;

	root ./webSite;

	autoindex on;
	allow_methods GET;
}

Use Config_Simple.wscfg to get full website

./webserv tests/config_simple.wscfg

Then, go to your webbrowser and enter this IP: 127.0.0.1:8081

Content

  • HTTP Methods (Get, Post, Delete)
  • Multiple HTTP code.
  • Exceptions and errors handled.
  • Nginx Locations.
  • Python and PHP CGI.
  • Upload large files.
  • Upload, texts, images, movies and other things...
  • Send php forms.

Server Configuration Files

Requirements fields:

  • host
  • port
  • server_name
  • root
  • allow_methods (at least, GET)
  • autoindex

Default: config_default.wscfg
Simple-Linux: config_simple_linux.wscfg
Locations: config_locations.wscfg

Example

Animation

Ressources

About

42 project, creation of an HTTP server from scratch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors