Skip to content

program obsługujący żądania protokołu komunikacyjnego HTTP

Notifications You must be signed in to change notification settings

kbreczko/web-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

web-server

Opis:

Implementacja prostego serwera WWW, obsługujący żądania protokołu komunikacyjnego HTTP. Wyświeta strony z zadanego katalogu.

Realizowane zadania:

  • obsługa żądań GET (pole Host i pole Connection)
  • odsyła informacje: kod odpowiedzi, pole Content-Type i pole Content-Length.
  • zwraca następujące kody odpowiedzi: 200 (OK), 301(Moved Permanently), 403 (Forbidden), 404 (Not Found), 501 ( Not Implemented)
  • obsługa plików: txt, html, css, jpg, jpeg, png i pdf. Pozostałe pliki mają typ application/octet-stream
  • po nawiązaniu połączenia serwer utrzymuje połączenie z nieaktywnym klientem przez 1s (zamykane w przypadku odebrania nagłówka Connection: close)
  • obsługa wiele klientów jednocześnie

Przed uruchomieniem:

Skonfiguruj lokalne rozwiązywanie nazw DNS dopisując do pliku /etc/hosts następujące wpisy:
127.10.10.1 domena1.sieci.edu
127.10.10.2 domena2.sieci.edu
Od tej pory odwołania do powyższych domen będą kierowane do lokalnego komputera.

Uruchomienie:

./server port directory
port - numer portu, na którym serwer będzie oczekiwać na przychodzące połączenia (np. 8888)
directory - katalog zawierający strony WWW (np. ../strony-www/)

Testowanie:

  • w przeglądarce wpisać adres: domena1.sieci.edu:8888/
  • echo incorrect data | nc domena1.sieci.edu 8888
  • echo incorrect data | telnet domena1.sieci.edu 8888

About

program obsługujący żądania protokołu komunikacyjnego HTTP

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published