Bienvenue dans notre projet WebServ pour 42! Cette lecture donne un aperçu de notre implémentation de serveur HTTP, des détails de configuration et de la façon de commencer à utiliser notre serveur.
Un serveur HTTP est un logiciel conçu pour accepter les demandes des clients et leur envoyer des réponses sur Internet ou un réseau. En règle générale, il sert des pages Web aux utilisateurs en réponse aux demandes qui incluent des méthodes comme Get, Post, Delete, etc.
Notre projet, Webserv, est conçu pour simuler le comportement des vrais serveurs HTTP mais à plus petite échelle. Il peut gérer plusieurs configurations de serveur simultanément jusqu'à une limite de 1024 serveurs en raison de notre choix d'utilisation de la fonction select() . Les principales caractéristiques de notre implémentation sont:
/cgi ./register et /login . Nous sommes fiers d'annoncer que notre projet WebServit a reçu la marque la plus élevée possible, marquant 125% lors de l'évaluation. Cela reflète notre engagement envers la qualité, la fonctionnalité et l'adhésion aux spécifications du projet.
La robustesse de notre serveur a été testée à l'aide du testeur de contrainte de siège. Après plusieurs séances de test prolongées, Webserv a montré une excellente fiabilité, soutenant un taux de réussite de 100% à travers les tests. Cela démontre la capacité de notre serveur à gérer des charges élevées et à maintenir les performances sous contrainte.
Nos configurations de serveur sont détaillées dans un fichier séparé. Vous trouverez ci-dessous un exemple de configuration pour notre serveur:
server :
server_name : example
port : 1234
host : 127.0.0.1
max_body_size : 23854644
root : example_website_path
default_file : index.html
error_page :
403 : /error_webpages/403.html
404 : /error_webpages/404.html
405 : /error_webpages/405.html
413 : /error_webpages/413.html
501 : /error_webpages/501.html
location :
path : /
methods : GET, POST
redirect : /index.html
# Multiple server blocks can be configured similarly Pour commencer à utiliser Webserv, suivez ces étapes:
git clone https://github.com/rphlr/42-webserv [nameOfFolder]make./webserv [configuration-file-path]make run À des fins de test avec curl , vous pouvez utiliser les commandes suivantes:
curl -X POST " file=@/Path/to/File " http://localhost:port/cgi ? upload=truecurl -X GET http://localhost:port/cgi ? file=/path/to/filecurl -X DELETE http://localhost:port/default_webpages ? file=FileToDeleteN'hésitez pas à contribuer au projet en soumettant des demandes de traction ou en signalant des bogues.
Merci d'avoir consulté notre projet WebServ! Nous espérons qu'il servira de base solide pour en savoir plus sur le fonctionnement intérieur des serveurs HTTP.