Slovník tvorby webů a online marketingových pojmů

HTTP

  • Proweby.cz
  • 10. 7. 2024
  • H.

Co je to HTTP?

HTTP (Hypertext Transfer Protocol) je základní protokol používaný na webu pro přenos hypertextových dokumentů, jako jsou HTML stránky, mezi webovými servery a klienty (např. webovými prohlížeči). HTTP je protokol aplikační vrstvy, který definuje způsob formátování a přenosu zpráv a jak webové servery a prohlížeče reagují na různé požadavky.

Základní principy HTTP

Request-response model

HTTP pracuje na principu modelu požadavek-odpověď, kde klient (webový prohlížeč) posílá požadavek na server, a server vrací odpověď.

  • HTTP požadavek: Klient pošle požadavek obsahující metodu (např. GET, POST), URL a další informace.
  • HTTP odpověď: Server odpoví stavovým kódem (např. 200, 404), hlavičkami a tělem zprávy (např. HTML dokument).

Bezstavovost

HTTP je bezstavový protokol, což znamená, že každý požadavek a odpověď jsou nezávislé. Server neuchovává žádné informace o předchozích požadavcích.

HTTP metody

GET

GET metoda se používá k požadavku na zobrazení zdrojů zadaných v URL. Data jsou přenášena v URL řetězci.

httpZkopírovat kódGET /index.html HTTP/1.1
Host: www.example.com

POST

POST metoda se používá k odeslání dat na server (např. z formuláře). Data jsou přenášena v těle požadavku.

httpZkopírovat kódPOST /submit-form HTTP/1.1
Host: www.example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 27

name=John&age=30

PUT

PUT metoda se používá k nahrání zdroje na server nebo k aktualizaci existujícího zdroje.

httpZkopírovat kódPUT /resource/1 HTTP/1.1
Host: www.example.com
Content-Type: application/json
Content-Length: 48

{
  "name": "Updated Resource",
  "value": "42"
}

DELETE

DELETE metoda se používá k odstranění specifikovaného zdroje na serveru.

httpZkopírovat kódDELETE /resource/1 HTTP/1.1
Host: www.example.com

HEAD

HEAD metoda je podobná metodě GET, ale server vrací pouze hlavičky odpovědi, nikoli tělo zprávy. Používá se pro získání meta informací o zdroji.

httpZkopírovat kódHEAD /index.html HTTP/1.1
Host: www.example.com

HTTP stavové kódy

1xx Informational

  • 100 Continue: Počáteční část požadavku byla přijata, klient by měl pokračovat v odesílání požadavku.
  • 101 Switching Protocols: Server souhlasí se změnou protokolů, které požadoval klient.

2xx Success

  • 200 OK: Požadavek byl úspěšný a server vrátil požadovaný obsah.
  • 201 Created: Požadavek byl úspěšný a nový zdroj byl vytvořen.

3xx Redirection

  • 301 Moved Permanently: Zdroj byl trvale přesunut na jinou URL.
  • 302 Found: Zdroj byl dočasně přesunut na jinou URL.

4xx Client Error

  • 400 Bad Request: Server nerozumí požadavku kvůli chybné syntaxi.
  • 401 Unauthorized: Požadavek vyžaduje autentizaci.
  • 403 Forbidden: Server rozumí požadavku, ale odmítá jej provést.
  • 404 Not Found: Server nemůže najít požadovaný zdroj.

5xx Server Error

  • 500 Internal Server Error: Server narazil na neočekávanou chybu.
  • 503 Service Unavailable: Server není dostupný (např. kvůli údržbě).

HTTP vs. HTTPS

HTTPS (Hypertext Transfer Protocol Secure) je rozšířením HTTP, které přidává šifrování pomocí protokolu SSL/TLS. HTTPS zajišťuje bezpečnost a důvěrnost dat přenášených mezi klientem a serverem.

Výhody HTTPS

  • Šifrování: Data jsou šifrována, což zvyšuje jejich bezpečnost.
  • Autentizace: Ověřuje identitu serveru, což chrání před útoky typu man-in-the-middle.
  • Integrita dat: Zajišťuje, že data nebyla během přenosu změněna.

Závěr

HTTP je základním protokolem pro přenos dat na webu. Pochopení jeho principů, metod a stavových kódů je klíčové pro vývoj webových aplikací a serverů. Přechod na HTTPS je důležitý krok k zabezpečení webového provozu a ochrany uživatelských dat.