- 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 simples feito do zero descrição do projeto
Recursos deste WebServ
- Programação de soquetes: comunicação básica do servidor-cliente (usando o <sys/soket.h> lib)
- Programação de soquetes: Multiplexação de IO com suíte Epoll, soquetes não são bloqueadores
- Arquitetura do servidor da web: com base na arquitetura nginx (processo do trabalhador) -> estrutura de dados do servidor, estrutura de dados de configuração
- Arquitetura do servidor da web: um trabalhador (um processo) está lidando com todas as conexões usando o epoll,
- Arquivos de configuração: inspirado no arquivo de configuração nginx, consulte os detalhes das diretivas abaixo
- Diretivas de configuração: consulte "./_webserv/configuration_files/readme.md"
- Protocolo HTTP: 1.1
- Métodos HTTP: Get, Post, Exclua
- Redirecionamentos HTTP
- Códigos de erro HTTP: consulte "./webservie_dictionNary.md"
- Upload de arquivo:
- Download de arquivos:
- Tipo de dados tratado: simples/text, binário
- Codificação em pedaços
- Conteúdo dinâmico tratado com CGI, scripts CGI em Python e Perl
- Timers definidos para 60 segundos padrão
- Scripts HTML, CSS
- Usa objetos de fluxo em vez de descritores de arquivos para a maioria das operações de leitura/gravação, exceto para soquetes
- Gerenciamento de erros, vazamentos, cerco
host, escute, server_name, localização, método, root, índice, autoindex, body_size, error_page, retorno, exec_cgi, extension_cgi)
Conteúdo deste github
_WebServ
Esta pasta contém a versão final e completa do nosso WebSer, empurrado e validado em 18/07/23.
./WebServ_*
Nosso objetivo é finalizar os seguintes documentos nas próximas semanas, atualmente eles ainda estão em andamento em andamento:
- ./WebServ_dictionNary.md
- ./WebServ_research.pdf
- ./WebServ_flowChart.pdf
- ./WebServ_Correction_Prep.md
- ./_WebSerserv/configuration_files/readme.md
WIP Research is available at : https://docs.google.com/document/d/1i5g1XgHDpUf_c7DF9Sp-EdEj2Bdzipvbjh13hLPty0w/edit?usp=sharing disclaimer : this was our research document during the project and hasn´t been finalized, it's a bit of a mess but there are resourceful information
Como usar este WebServ
..Tbd
Funcionamento padrão do nosso servidor da web
O arquivo de configuração padrão está localizado em configuration_files/default.conf .
A raiz está sempre em var/www .
Esta pasta contém todos os arquivos estáticos que nosso servidor da web pode retornar ao cliente (HTML, CSS, imagens e até arquivos JavaScript!).
A página de índice está localizada em /html/landing_page.html .
... tbc