Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport.

Podobné prezentace


Prezentace na téma: "Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport."— Transkript prezentace:

1 Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport TCP, well-known port 80 Princip klient server, textové zprávy (požadavek a odpověď) jsou vyměňovány mezi klientem a serverem obdobně jako u transakcí SMTP HTTP transakce (např. klient požaduje zaslání kopie souboru, který následně interpretuje – server požadavek akceptuje, kopii ve své odpovědi odesílá) 1

2 Protokol HTTP (Hypertext Transfer Protocol) Formát a obsah textových zpráv je specifikován v RFC dokumentech Vývoj HTTP – současná verze HTTP/1.1 (RFC 2616) – princip zpětné kompatibility Přínosy nové verze pro snížení zátěže sítě: – Vytváří trvalá spojení pro více požadavků klienta – Podporuje komprimaci a dekomprimaci dat – Možnost nastavení virtuálních serverů – Podpora intervalového přenosu – …….. 2

3 Protokol HTTP (Hypertext Transfer Protocol) Schéma komunikace 3 WEB server WEB klient WEB server 80 TCP spojení Hypertextový odkaz http požadavek http odpověď

4 Protokol HTTP (Hypertext Transfer Protocol) HTTP transakci iniciuje klient, předává požadavek serveru K Spřímá transakce K A B C S tunel proxy K A B………C……….S 4

5 Protokol HTTP (Hypertext Transfer Protocol) Formáty zpráv protokolu HTTP: Dotaz (request): ….příkazový řádek volný řádek Odpověď (response): ……… stavový řádek volný řádek 5

6 Protokol HTTP (Hypertext Transfer Protocol) Metoda – požadavek (1) – GET – žádá zaslání celé entity specifikované v URI – HEAD – žádá zaslání záhlaví entity specifikované v URI – POST –žádá o přijetí obsahu zprávy do entity specifikované v URI Odeslání poštovní zprávy do sdílené schránky Odeslání dat zapsaných do formuláře Připojení dat do databáze …….. 6

7 Protokol HTTP (Hypertext Transfer Protocol) Metoda – požadavek (2) – PUT – žádá o vložení obsahu zprávy pod specifikované URI – DELETE – žádá o výmaz entity specifikované v URI – Požadavky na správu transakce OPTION – žádost o informaci o podmínkách transakce TRACE – žádost o trasování komunikačního řetězce CONNECT – (zatím se neimplementuje) – umožňuje přepnutí proxy serveru na „tunel“ do zabezpečeného transakčního kanálu 7

8 Protokol HTTP (Hypertext Transfer Protocol) URI – (Uniform Resource Identifier) - identifikátor přístupu k internetovému zdroji (obecný) – formát :// : / /….. schema - síťový protokol aplikační vrstvy (služba) např.: http, ftp, telnet, mailto, nntp, news, file URL (Uniform Resource Locator) – typ URI – formát pro protokol HTTP: http: // [: ][ [? ] ] 8

9 Protokol HTTP (Hypertext Transfer Protocol) Verze protokolu – HTTP/1.1 nebo HTTP/1.0 http: // [: ][ - hierarchická složka (cesta k objektu) - nehierarchická složka Sekvence = & = & = & = …. CGI (Common Gateway Interface) – standard pro definice rozhraní mezi Web serverem a externími aplikačními programy 9

10 Protokol HTTP (Hypertext Transfer Protocol) Proměnné, které jsou předávány http serveru a mohou být zpracovámy v CGI programech – REQUEST_METHOD určuje způsob předávání informací -- GET nebo POST – QUERY_STRING obsahuje data přenášená metodou GET – CONTENT_TYPE MIME typ dat zasílaných metodou POST – CONTENT_LENGTH délka dat zasílaných metodou POST 10

11 Protokol HTTP (Hypertext Transfer Protocol) – REMOTE_ADDR IP-adresa počítače, z nějž přišel požadavek – REMOTE_HOST doménová adresa počítače, z nějž přišel požadavek – AUTH_TYPE způsob použité autorizace uživatele REMOTE_USER v případě, že byl uživatel autorizován, obsahuje tato proměnná jeho jméno 11

12 Protokol HTTP (Hypertext Transfer Protocol) URI schema https – https není samostatný protokol, ale HTTP interakce šifrovaná přes spojení SSL (Secure Sockets Layer) nebo TLS (Transport Layer Security) – Pokud není specifikováno v URL, používá https port 443 – Interakce klient – server vyžaduje autentizaci serveru (povinně) a autentizaci klienta (volitelně) 12

13 Protokol HTTP (Hypertext Transfer Protocol) Stavový kód – tříciferný identifikátor typu odpovědi  100 – 199 – odpověď má charakter informace  200 – požadavek je úspěšně splněn  300 – 399 – informace o přemístění požadované entity  400 – 499 – chyba na straně klienta  500 – 599 –chyba na straně serveru 13

14 Příklady HTTP odpovědí Pozitivní odpovědi 200 – data odeslána202 - akceptováno 201 – vytvořeno204 – není obsah Informace nemodifikováno Chyba klienta 400 – Bad Request401 – Unauthorized 403 – Forbidden404 – Not found Chyba serveru 500 – Internal server error Not implemented 502- Bad gateway503 – Service unavailable 14

15 Protokol HTTP (Hypertext Transfer Protocol) Záhlaví („hlavičky“) – definuje RFC 2616definuje RFC 2616 – Obecné hlavičky – Hlavičky požadavků – Hlavičky odpovědí – Hlavičky obsahů zpráv 15

16 Protokol HTTP (Hypertext Transfer Protocol) Obecné hlavičky (general) - informace obecného charakteru o zprávě. Příklady: Date: Mon, 07 Apr :42:10 GMT (formát podle RFC822) Datum vytvoření zprávy Pragma: no-cache Umožní zahrnout specifické direktivy Host: "Host" ":" host [ ":" port ] GET /pub/WWW/ HTTP/1.1 Host: 16

17 Protokol HTTP (Hypertext Transfer Protocol) Hlavičky požadavků (request) Accept : text/plain, text/html, text/x-dvi, image/jpeg Podporované typy informačních objektů Authorization: Basic : Autentifikace uživatele From : uživatele If-Modified-Since: Mon, 07 Apr :42:10 GMT Datum poslední modifikace objektu Referer Informuje server, který URL je původcem odkazu na URL dotazu 17

18 Protokol HTTP (Hypertext Transfer Protocol) Hlavičky odpovědí (response) Location: V souvislosti s kódy skupiny 3xx udává nové URL přemístěného objektu Server: Apache/1.2.5 mod_czech/2.4.0 PHP/3.0rev-dev Informace o programové podpoře serveru WWW-Authenticate: Basic realm="super-tajne" V souvislosti s kódem výzva k prokázání totožnosti 18

19 Protokol HTTP (Hypertext Transfer Protocol) Hlavičky těla zpráv (entity) Allow: GET, HEAD, PUT Informuje, jaké metody jsou uplatněny v rámci příslušného URL Content-Base: Základní URL pro relativní specifikaci Content-Encoding: gzip Indikace použitého dodatečného typu kódování Content-Type: text/html : charset=ISO Specifikuje typ zasílaného objektu Expires: Mon, 07 Apr :42:10 GMT Datum vypršení platnosti informace (pro ukládání do cache) Last-Modified: Mon, 07 Apr :42:10 GMT Datum poslední modifikace objektu 19

20 Protokol HTTP (Hypertext Transfer Protocol) Princip hypertexového dokumentu – odkazy na další entity prostřednictvím URL Základní typ entity Web – HTML (Hypertext Markup Language) dokument Jazyk HTML – podmnožina specifikace SGML (Standard Generalized Markup Language) verze HTML 4.0 – poslední verze, dále jako součást XHTML (Extensible Markup Language) Vývoj Web systému - konsorcium W3C 20

21 Protokol HTTP (Hypertext Transfer Protocol) Implementace HTTP serveru – WWW server – apache – IIS (Internet Information Server fy. Microsoft) – ………………………………………. Implementace HTTP klienta – WWW prohlížeč (WWW browser) – Explorer – Netscape browser – Opera – Lynx – ……………….. 21


Stáhnout ppt "Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport."

Podobné prezentace


Reklamy Google