- Disclaimer!
+ On this github only the project is final
! Project research, documentation and other supporting documents are work in progress
! -> readme.md and dir _readme_files
42_webserv
Servidor HTTP simple hecho desde cero Descripción del proyecto
Características de este Webserv
- Programación de sockets: comunicación básica del servidor-cliente (usando <sys/socket.h> lib)
- Programación de enchufes: Multiplexación IO con suite Epoll, los enchufes no están bloqueando
- Arquitectura del servidor web: según la arquitectura NGINX (proceso de trabajador) -> Estructura de datos del servidor, estructura de datos de configuración
- Arquitectura del servidor web: un trabajador (un proceso) está manejando todas las conexiones usando Epoll,
- Archivos de configuración: Inspirado en el archivo de configuración de Nginx, consulte los detalles de las directivas a continuación
- Directivas de configuración: consulte "./_webserv/configuration_files/readme.md"
- Protocolo HTTP: 1.1
- Métodos HTTP: obtener, publicar, eliminar
- Redirecciones HTTP
- Códigos de error http: ver "./Webserv_DictionNary.md"
- Carga del archivo:
- Descarga del archivo:
- Tipo de datos manejado: simple/texto, binario
- Codificación
- Contenido dinámico manejado con Scripts CGI, CGI en Python y Perl
- Temporizadores establecidos en 60 segundos predeterminados
- Scripts HTML, CSS
- Utiliza objetos de transmisión en lugar de descriptores de archivos para la mayoría de la operación de lectura/escritura, excepto para sockets
- Gestión de errores, filtraciones, asedio
Host, escuchar, server_name, ubicación, método, raíz, índice, autoindex, body_size, error_page, return, exec_cgi, extension_cgi)
Contenido de este Github
_Webserv
Esta carpeta contiene la versión final y completa de nuestro sitio web, empujado y validado 18/07/23.
./webserv_**
Su objetivo es finalizar los siguientes documentos en las próximas semanas, actualmente todavía están funcionando en progreso:
- ./webserv_dictionNary.md
- ./webserv_research.pdf
- ./webserv_flowchart.pdf
- ./webserv_correction_prep.md
- ./_webserv/configuration_files/readme.md
WIP Research está disponible en: https://docs.google.com/document/d/1i5g1xghdpuf_c7df9sp-edeJ2bdzipvbjh13hlpty0w/edit?usp=sharing Relometerer: Este fue nuestro documento de investigación durante el proyecto y no ha sido finalizado, es un poco de información, pero hay un desastre recursos.
Cómo usar este Webserv
..TBD
Funcionamiento predeterminado de nuestro servidor web
El archivo de configuración predeterminado se encuentra en configuration_files/default.conf .
La raíz siempre está en var/www .
Esta carpeta contiene todos los archivos estáticos que nuestro servidor web puede devolver al cliente (HTML, CSS, imágenes e incluso archivos JavaScript!).
La página de índice se encuentra en /html/landing_page.html .
... TBC