Willkommen in unserem WebServ -Projekt für 42! Dieses ReadMe bietet einen Überblick über unsere HTTP -Server -Implementierung, Konfigurationsdetails und die Verwendung mit unserem Server.
Ein HTTP -Server ist Software, mit der Anforderungen von Clients akzeptiert und ihnen Antworten über das Internet oder ein Netzwerk gesendet werden. In der Regel dient es Webseiten für Benutzer als Antwort auf Anfragen, die Methoden wie GET, Post, Löschen usw. enthalten.
Unser Projekt, WebServ, soll das Verhalten realer HTTP -Server, jedoch in kleinerem Maßstab, simulieren. Es können mehrere Serverkonfigurationen gleichzeitig bis zu einem Grenzwert von 1024 Servern verarbeiten, da die Funktion der Verwendung der select() -Funktion verwendet wird. Die Hauptmerkmale unserer Implementierung sind:
/cgi ./register und /login . Wir sind stolz darauf, bekannt zu geben, dass unser WebServ -Projekt die höchstmögliche Marke erhalten hat und bei der Bewertung 125% erzielte. Dies spiegelt unser Engagement für Qualität, Funktionalität und Einhaltung von Projektspezifikationen wider.
Die Robustheit unseres Servers wurde mit dem Belagerungstester getestet. Nach mehreren erweiterten Testsitzungen zeigte WebServ eine hervorragende Zuverlässigkeit und stützte sich über die Tests über eine Erfolgsquote von 100%. Dies zeigt die Fähigkeit unseres Servers, hohe Lasten zu bewältigen und die Leistung unter Stress aufrechtzuerhalten.
Unsere Serverkonfigurationen sind in einer separaten Datei aufgeführt. Im Folgenden finden Sie eine Beispielkonfiguration für unseren Server:
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 Befolgen Sie die folgenden Schritte, um WebServe zu verwenden:
git clone https://github.com/rphlr/42-webserv [nameOfFolder]make./webserv [configuration-file-path]make run Zu den Testzwecken mit curl können Sie die folgenden Befehle verwenden:
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=FileToDeleteFühlen Sie sich frei, zum Projekt beizutragen, indem Sie Pull -Anfragen oder Meldungen von Fehler einreichen.
Vielen Dank, dass Sie sich unser WebServ -Projekt angesehen haben! Wir hoffen, dass es als solide Basis dient, um mehr über die inneren Funktionen von HTTP -Servern zu erfahren.