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

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

Základní složky systému globálního informačního systému WWW Jednoznačná globální identifikace WWW zdrojů (URL, URI, URN) Standardní jazyk pro vytváření.

Podobné prezentace


Prezentace na téma: "Základní složky systému globálního informačního systému WWW Jednoznačná globální identifikace WWW zdrojů (URL, URI, URN) Standardní jazyk pro vytváření."— Transkript prezentace:

1 Základní složky systému globálního informačního systému WWW Jednoznačná globální identifikace WWW zdrojů (URL, URI, URN) Standardní jazyk pro vytváření a publikaci WWW dokumentů – HTML (HyperText Markup Language) Komunikační protokol HTTP (HyperText Transfer Protocol) 1 Systém WWW

2 Identifikace WWW zdrojů URI – Uniform Resource Identifier – URL (Uniform Resource Locator) – lokalizace a vyhledání zdroje – URN (Uniform Resource Name) – identifikace zdroje 2

3 Systém WWW Definice Uniform Resource Identifier (URI) je znakový řetězec identifikující jméno nebo internetový zdroj. URI identifikuje zdroj buď podle jeho umístění, jména nebo obojího. URI má dvě složky – URL a URN. Uniform Resource Locator (URL) je podmnožina URI, která specifikuje, kde je identifikovaný zdroj dostupný a mechanismus, který umožní jeho získání. To znamená, že URL definuje, jak lze zdroj získat. To nemusí být pouze HTTP URL (http://), URL může to být např. také (ftp://), atd. Uniform Resource Name (URN) je Uniform Resource Identifier (URI), který používá schéma URN, ale neurčuje dostupnost identifikovaného zdroje. Jak URNs (jména), tak i URLs (lokátory) jsou URIs (identifikátory). Konkrétní URI může být současně jméno i lokátor (typicky v kontextu internetových služeb). 3

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

5 Složky URL Hierarchická složka - cesta k objektu ( protokol pro přístup k objektu – doménové jméno hostitelského systému – port – cesta k objektu na hostitelském systému ) Nehierarchická složka (volitelné položky) – query – uvedené hodnoty jsou předány ke zpracování webovým aplikacím (CGI programům) – fragment - odkaz na identifikátor (návěští), kterým je označena určitá část webového objektu Systém WWW 5 query string = & = & = & = …. hierarchickánehierarchická

6 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 Zprávy požadavek a odpověď jsou vyměňovány mezi klientem a serverem obdobně jako u transakcí SMTP HTTP odpovědi – původně textové dokumenty ve formátu HTML – nyní podpora MIME (odpovědi mohou obsahovat soubory různých i netextových formátů) 6

7 Protokol HTTP HTTP transakce Klient požaduje zaslání kopie souboru. Server požadavek akceptuje, kopii ve své odpovědi odesílá a klient přijatou kopii následně interpretuje. 7

8 Protokol HTTP (Hypertext Transfer Protocol) Formát a obsah HTTP zpráv je specifikován v RFC dokumentech Vývoj HTTP (současná verze HTTP/1.1 - RFC ) – Princip zpětné kompatibility – Vývoj Přínosy nových verzí : – Vytváření trvalých spojení pro více požadavků klienta – Podpora komprimace a dekomprimace dat – Možnost nastavení virtuálních serverů – Podpora bezpečných transakcí – …….. 8

9 Protokol HTTP (Hypertext Transfer Protocol) 9

10 HTTP transakci iniciuje klient, předává požadavek serveru 10

11 Protokol HTTP (Hypertext Transfer Protocol) 11

12 12 Ukázky HTTP dialogů HTTP request HTTP response

13 13 HTTP request HTTP response HTTP response body HTTP response headers

14 14 GET / HTTP/1.1 Host: User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:25.0) Gecko/ Firefox/25.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: cs,en-us;q=0.7,en;q=0.3 Accept-Encoding: gzip, deflate Cookie: personalizace=lastdatum=17%2E3%2E2013&setver=full; __utma= ; bbnaut=4e407415a3a075d3; __atuvc=1%7C12; __gfp_64b=iJDAsLPVoteWp97NP63z8Bbox7OVK3eZLkMT2J0o7yT.j7; speed=237; ibbid=BBID Connection: keep-alive HTTP/ OK Cache-Control: private,max-age=0 Content-Type: text/html; charset=windows-1250 Content-Encoding: gzip Expires: Wed, 01 Jan :00:00 GMT Vary: Accept-Encoding Server: Microsoft-IIS/7.5 X-AspNet-Version: X-Powered-By: iDNES iweb50 Date: Sat, 23 Nov :44:58 GMT Connection: close Content-Length: &e.Q:..m.l?.....|v..t Vm.^...>j.w N r..+n.....^O..m....]y......l.K.1...;L...n....b ;.p.Z6....RW..nYm.W...l......D.t;...../.....jQ]fi.. HTTP request HTTP response HTTP response body HTTP response headers

15 15

16 Protokol HTTP (Hypertext Transfer Protocol) Popis zpráv HTTP Verze protokolu – HTTP/1.1 nebo HTTP/1.0 Request: Metoda – požadavek (1) – GET – žádá zaslání celé entity specifikované v URI – HEAD – žádá zaslání záhlaví entity specifikované v URI – POST – odesílá obsah 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 …….. 16

17 Protokol HTTP (Hypertext Transfer Protocol) Metoda – požadavek (2 ) – PUT – vkládá obsah zprávy do entity specifikované v URI (tj. nahrává nová data do serveru) – 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 – Odešle kopii obdrženého požadavku zpět odesílateli, takže klient může zjistit, co na požadavku mění nebo co přidávají servery, kterými požadavek prochází. CONNECT – Spojí se s uvedeným objektem přes určený port. Používá se při průchodu skrze proxy-servery pro ustanovení kanálu PATCH – Provede změny ve zdroji (rozdílový dokument) 17

18 Systém WWW CGI (Common Gateway Interface) Standard pro definice rozhraní mezi Web serverem a externími aplikačními programy CGI programy umožňují dynamickou interakci uživatele s WWW serverem (tvorba dynamických HTML stránek) Různé typy programů, které lze provozovat v daném systému (kde je spuštěný HTTP server): bash, C, Perl, Java, PHP, Python ….Python 18

19 19 CGI Architecture Diagram Systém WWW CGI (Common Gateway Interface)

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

21 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 21 Poznámka: metoda POST přenáší data v těle zprávy

22 22 Protokol HTTP (Hypertext Transfer Protocol) Metoda GET – Lze přenášet pouze znakové řetězce, max. 255znaků – Data jsou méně zabezpečena než v metodě POST (jsou „vidět“ v URL) Metoda POST – Lze přenášet jakákoliv data specifikovaná v MIME (v neomezené délce) – Data jsou lépe zabezpečena

23 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ě) 23

24 Protokol HTTP (Hypertext Transfer Protocol) Response 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 24

25 Příklady HTTP odpovědí Pozitivní odpovědi 200 – data odeslána202 - akceptováno 201 – vytvořeno204 – není obsah Informační odpovědi 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 25 Protokol HTTP (Hypertext Transfer Protocol)

26 Záhlaví („hlavičky“) – definují RFCs ( ) Obecné hlavičky Hlavičky požadavků Hlavičky odpovědí Hlavičky obsahů zpráv 26

27 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 (např. no-cache: odpověď nesmí být vytvořena ze záznamu v cache pamět´) Host: "Host" ":" host [ ":" port ] GET /pub/WWW/ HTTP/1.1 ……. příkaz Host: ….doménové jméno serveru (povinná hlavička ve verzi 1.1) 27

28 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 28

29 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 (např. 301 – Moved permanently) 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 29

30 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 30

31 Protokol HTTP (Hypertext Transfer Protocol) Kontext WWW – Web technologie Hypertexový dokument– odkazy na další zdroje prostřednictvím URL Základní typ zdroje systému WWW – HTML (Hypertext Markup Language) dokument Jazyk HTML – podmnožina specifikace SGML (Standard Generalized Markup Language) Verze HTML 5 – poslední verze HTMLHTML 5 Vývoj Web systému - konsorcium W3C 31

32 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 – Firefox – Lynx – Chrome – ……. 32


Stáhnout ppt "Základní složky systému globálního informačního systému WWW Jednoznačná globální identifikace WWW zdrojů (URL, URI, URN) Standardní jazyk pro vytváření."

Podobné prezentace


Reklamy Google