¡Bienvenido a nuestro Proyecto WebServ para 42! Este ReadMe proporciona una descripción general de nuestra implementación del servidor HTTP, detalles de configuración y cómo comenzar a usar nuestro servidor.
Un servidor HTTP es un software diseñado para aceptar solicitudes de los clientes y enviarles respuestas a través de Internet o una red. Por lo general, sirve páginas web a los usuarios en respuesta a solicitudes que incluyen métodos como Get, Post, Eliminar, etc.
Nuestro proyecto, WebServ, está diseñado para simular el comportamiento de los servidores HTTP reales pero a menor escala. Puede manejar múltiples configuraciones del servidor simultáneamente hasta un límite de 1024 servidores debido a nuestra elección de usar la función select() . Las características clave de nuestra implementación son:
/cgi ./register y /login . Nos enorgullece anunciar que nuestro proyecto WebServ recibió la marca más alta posible, obteniendo un 125% en la evaluación. Esto refleja nuestro compromiso con la calidad, la funcionalidad y el cumplimiento de las especificaciones del proyecto.
La robustez de nuestro servidor se probó utilizando el probador de estrés de asedio. Después de varias sesiones de prueba extendidas, WebServ mostró una excelente confiabilidad, manteniendo una tasa de éxito del 100% en las pruebas. Esto demuestra la capacidad de nuestro servidor para manejar cargas altas y mantener el rendimiento bajo estrés.
Las configuraciones de nuestro servidor se detallan en un archivo separado. A continuación se muestra una configuración de ejemplo para nuestro servidor:
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 Para comenzar a usar WebServ, siga estos pasos:
git clone https://github.com/rphlr/42-webserv [nameOfFolder]make./webserv [configuration-file-path]make run Para fines de prueba con curl , puede usar los siguientes comandos:
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=FileToDeleteSiéntase libre de contribuir al proyecto enviando solicitudes de extracción o informando errores.
¡Gracias por visitar nuestro proyecto WebServ! Esperamos que sirva como una base sólida para aprender más sobre el funcionamiento interno de los servidores HTTP.