Skip to content

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Simple HTTP Server (C++)

Bu proje, yalnızca C++ ve POSIX soketleri kullanılarak sıfırdan yazılmış basit bir HTTP 1.1 sunucusudur.
Amaç, düşük seviye ağ programlama ve HTTP protokolü mantığını öğrenmektir.

Özellikler

  • HTTP/1.1 desteği
  • GET isteklerini işleme
  • Temel yönlendirme ("/" ve "/about")
  • Connection: keep-alive & close yönetimi
  • Tamamen STL + POSIX ile yazılmıştır
  • Çoklu istemci desteği

Kullanım

🔹 1. CMake yapı klasörü oluştur

mkdir build && cd build

🔹 2. CMake ile yapılandır

cmake ..

🔹 3. Derle

make

🔹 4. Sunucuyu çalıştır

./server

Öğrenme Odakları

Bu proje aşağıdaki konuların öğrenilmesi için uygundur:

  • TCP/IP temelleri
  • HTTP protokol yapısı
  • Soket programlama (bind, listen, accept, recv, send)
  • HTTP isteklerinin parse edilmesi
  • C++ stream ve string işlemleri

Gelecek Geliştirmeler

  • Çoklu istemci desteği (std::thread veya select())
  • POST istek desteği
  • Statik dosya sunumu (HTML, CSS, JS)
  • Loglama sistemi
  • Basit web API yapısı
  • Komut satırı argümanlarını parse etme (--port, --root, --help)
  • Port ve statik klasör yolunun Config nesnesi ile dinamik yönetimi
  • Sisteme global kurulum desteği (sudo make install)
  • Yapılandırılmış loglama sistemi (Hata ve erişim kayıtları)

About

Simple HTTP Server, yalnızca C++ ve POSIX soketleri kullanılarak sıfırdan yazılmış bir HTTP/1.1 sunucusudur.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages