Bem-vindo! Este guia vai te mostrar, passo a passo, como esse projeto funciona e como você pode rodar um servidor HTTP básico em C. Vamos nessa? 🚀
Este é um servidor HTTP feito do zero em C. Ele escuta conexões na porta 3490 e responde com uma página HTML simples. Ideal pra quem quer entender como a web funciona por trás dos panos.
Antes de começar, verifique se tem o seguinte:
- ✅ Um compilador C (como o
gcc) - ✅ Um terminal (Linux ou WSL no Windows)
- ✅ Vontade de aprender! 😄
Abra o terminal na pasta do projeto e digite:
gcc server.c -o serverIsso vai compilar o código e gerar um executável chamado server.
Ainda no terminal, execute:
./serverO servidor vai iniciar e começar a escutar conexões na porta 3490.
Abra seu navegador e digite:
http://localhost:3490
Você verá uma página HTML simples, enviada pelo seu próprio servidor!
Vamos explicar de forma simples o que o código faz:
- 🧪 Cria um socket – como se fosse um telefone pronto para receber ligações.
- 🪛 Configura opções – define que o socket pode ser reutilizado.
- 🧱 Associa o socket a uma porta (3490) – conecta o telefone a uma linha.
- 👂 Escuta conexões – espera alguém ligar.
- 🤝 Aceita uma conexão – atende a ligação.
- 📩 Lê os dados – ouve o que a pessoa do outro lado falou.
- ✉️ Envia uma resposta – devolve uma página HTML como resposta.
- 🔁 Fecha a conexão e espera a próxima.
Esse projeto é inspirado no famoso guia de redes do Beej: 👉 Beej's Guide to Network Programming
Se quiser ver a resposta direto no terminal, use:
curl http://localhost:3490Para parar o servidor, pressione Ctrl + C.
Feito com ❤ para quem quer aprender mais sobre C e redes!