architektúra webu

21
Architektúra webu Architektúra webu Webové technológie a publikovanie na webe

Upload: lilith

Post on 07-Jan-2016

41 views

Category:

Documents


5 download

DESCRIPTION

Webové technológie a publikovanie na webe. Architektúra webu. World Wide Web. internetová služba multimediálne komunikačné médium (web 2.0) zdroj informácií publikačný kanál marketingový nástroj odborná knižnica. Webová stránka - dokument publikovaný na webe. Webové technológie. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Architektúra webu

Architektúra webuArchitektúra webu

Webové technológie a publikovanie na webe

Page 2: Architektúra webu

World Wide WebWorld Wide Web

internetová službainternetová služba multimediálne komunikačné médium multimediálne komunikačné médium

(web 2.0)(web 2.0) zdroj informáciízdroj informácií publikačný kanálpublikačný kanál marketingový nástrojmarketingový nástroj odborná knižnicaodborná knižnica

Page 3: Architektúra webu

Webová stránka - Webová stránka - dokument dokument publikovaný na webepublikovaný na webe

textový dokumenttextový dokument multimediálny dokumentmultimediálny dokument aplikácia, ktorá užívateľovi sprístupňuje aplikácia, ktorá užívateľovi sprístupňuje

ďalšie službyďalšie služby

Webové technológieWebové technológie webový server, webový klientwebový server, webový klient webový adresný priestor (URI)webový adresný priestor (URI) doménový menný systém (DNS)doménový menný systém (DNS) komunikačný protokol (HTTP, HTTPS)komunikačný protokol (HTTP, HTTPS) jazyky pre tvorbu webového obsahujazyky pre tvorbu webového obsahu

Page 4: Architektúra webu

Webový server a webový Webový server a webový klientklient

architektúra webu: klient – serverarchitektúra webu: klient – server komunikácia dvoch programovkomunikácia dvoch programov na základe požiadavky klienta server na základe požiadavky klienta server

poskytuje službu, ktorú klient poskytuje službu, ktorú klient využívavyužíva

Page 5: Architektúra webu

webový serverwebový server – sprístupňuje webové – sprístupňuje webové stránkystránky− veľa open-source softvérov (napr. Apache)veľa open-source softvérov (napr. Apache)− inštalácia aj na vlastnom PC pre vývoj a inštalácia aj na vlastnom PC pre vývoj a

testovanie webových aplikáciítestovanie webových aplikácií− pre umiestnenie webových stránok na pre umiestnenie webových stránok na

internete je vhodnejšie využiť internete je vhodnejšie využiť webhosting webhosting (sprostredkuje nákup, registráciu, (sprostredkuje nákup, registráciu, konfiguráciu domény, komunikačné konfiguráciu domény, komunikačné služby, ...)služby, ...)

Webový server a webový Webový server a webový klientklient

Page 6: Architektúra webu

webový klientwebový klient – prezentuje webové – prezentuje webové stránky užívateľovistránky užívateľovi− internetový prehliadač, webový internetový prehliadač, webový

prehliadačprehliadač− komerčné aj open-source (napr. MS IE, komerčné aj open-source (napr. MS IE,

Mozilla Firefox, Opera, Safari, Google Mozilla Firefox, Opera, Safari, Google Chrome, ...)Chrome, ...)

− často používaný softvérový nástroj, aj na často používaný softvérový nástroj, aj na prácu s citlivými osobnými údajmi, dôraz prácu s citlivými osobnými údajmi, dôraz na vyspelosť softvéru pri výberena vyspelosť softvéru pri výbere

Webový server a webový Webový server a webový klientklient

Page 7: Architektúra webu

Webové adresyWebové adresy

podliehajú štandardom DNS a URIpodliehajú štandardom DNS a URI adresy počítačov sú číselné: adresy počítačov sú číselné: IP adresyIP adresy

− napr. 194.67.123.101napr. 194.67.123.101 reťazcové reťazcové doménové adresydoménové adresy používané používané

užívateľmi musia byť najskôr preložené užívateľmi musia byť najskôr preložené na IPna IP− napr. www.matfyz.sk napr. www.matfyz.sk

preklad adries zabezpečuje preklad adries zabezpečuje doménový doménový menný systém (DNS)menný systém (DNS)

Page 8: Architektúra webu

Doménový menný systémDoménový menný systém

umožňuje doménu vlastniť a využívaťumožňuje doménu vlastniť a využívať je hierarchický, pod každou doménou je hierarchický, pod každou doménou

môžeme vytvoriť ľubovoľný počet môžeme vytvoriť ľubovoľný počet subdoménsubdomén (prostredníctvom prefixu a (prostredníctvom prefixu a bodky, napr. blog.matfyz.sk)bodky, napr. blog.matfyz.sk)

jednej IP adrese môže byť priradených jednej IP adrese môže byť priradených niekoľko domén (napr. poskytovateľ niekoľko domén (napr. poskytovateľ webhostingu)webhostingu)

jedna doména môže byť priradená jedna doména môže byť priradená niekoľkým IP adresám (napr. portál, niekoľkým IP adresám (napr. portál, vyťažený web) vyťažený web)

Page 9: Architektúra webu

Štandard URIŠtandard URI

URI (Uniform Resource Identifier)URI (Uniform Resource Identifier) definuje prístupné formáty webových definuje prístupné formáty webových

adriesadries doménové meno je len časťou webovej doménové meno je len časťou webovej

adresy (označuje sa aj URI adresa)adresy (označuje sa aj URI adresa) URI adresácia sa používa pri službe URI adresácia sa používa pri službe

www, ale aj pri iných službách (napr. www, ale aj pri iných službách (napr. ftp, mail)ftp, mail)

Page 10: Architektúra webu

Štandard URIŠtandard URI

časti URI adresyčasti URI adresy− komunikačný protokolkomunikačný protokol− adresa servera a port, na ktorom webserver adresa servera a port, na ktorom webserver

bežíbeží− uloženie dokumentu na serveriuloženie dokumentu na serveri− časť odovzdaná webserveru na spracovaniečasť odovzdaná webserveru na spracovanie− miesto vnútri dokumentu, na ktoré adresa miesto vnútri dokumentu, na ktoré adresa

ukazujeukazuje

Page 11: Architektúra webu

Protokol HTTP Protokol HTTP Prehliadač komunikuje s webserverom Prehliadač komunikuje s webserverom

pomocou pomocou protokolu HTTP protokolu HTTP (HyperText (HyperText Transfer Protocol). Transfer Protocol).

Protokol špecifikuje formát správ, ktoré si Protokol špecifikuje formát správ, ktoré si prehliadač a webserver vymieňajú.prehliadač a webserver vymieňajú.

HTTP protokol funguje na jednoduchom HTTP protokol funguje na jednoduchom princípe požiadavka-odpoveď. princípe požiadavka-odpoveď.

Potom ako napíšeme do prehliadača URI Potom ako napíšeme do prehliadača URI adresu, prehliadač zistí IP adresu servera, adresu, prehliadač zistí IP adresu servera, vytvorí TCP spojenie a odošle na adresu servera vytvorí TCP spojenie a odošle na adresu servera požiadavku (HTTP request).požiadavku (HTTP request).

Server Server požiadavkupožiadavku spracuje, a pošle naspäť spracuje, a pošle naspäť odpoveď (HTTP response). odpoveď (HTTP response).

Page 12: Architektúra webu

Protokol HTTP Protokol HTTP

Keďže web slúži predovšetkým na získavanie Keďže web slúži predovšetkým na získavanie dokumentov, HTTP odpoveď zvyčajne obsahudokumentov, HTTP odpoveď zvyčajne obsahujje e dokument umiestnený na danej adrese. dokument umiestnený na danej adrese. Správy HTTP protokolu sa skladajú z Správy HTTP protokolu sa skladajú z hlavičky hlavičky a z a z telatela. . Požiadavka aj odpoveď sú textové správy, pričom v Požiadavka aj odpoveď sú textové správy, pričom v tele správy sa môžu prenášať aj binárne dáta (napr. tele správy sa môžu prenášať aj binárne dáta (napr. vždy, keď sťahujeme obrázok). vždy, keď sťahujeme obrázok).

V tele správy sa teda prenáša samotný V tele správy sa teda prenáša samotný dokument,dokument, v hlavičke sa prenášajú rôzne v hlavičke sa prenášajú rôzne metadáta týkajúce sa komunikácie a metadáta týkajúce sa komunikácie a dokumentudokumentu..

Page 13: Architektúra webu

MetaúdajeMetaúdaje stavový kódstavový kód: : trojmiestny číselný kód identifikuje trojmiestny číselný kód identifikuje vyhodnotenie požiadavky web-serverom (200 – vyhodnotenie požiadavky web-serverom (200 – dokument nájdený; 301, 302 – presmerovanie; 403 - dokument nájdený; 301, 302 – presmerovanie; 403 - prístup zamietnutý, 404 – dokument sa nenašiel, prístup zamietnutý, 404 – dokument sa nenašiel, atď.); atď.); metódametóda (HTTP request method): (HTTP request method):

protokol HTTP rozlišuje niekoľko typov protokol HTTP rozlišuje niekoľko typov požiadaviek, ktorým hovoríme metódy. požiadaviek, ktorým hovoríme metódy. V praxi sa používajú predovšetkým metódy GET V praxi sa používajú predovšetkým metódy GET (vyžiadanie dokumentu) (vyžiadanie dokumentu) a POSTa POST (odoslanie dát) (odoslanie dát). .

cookies:cookies: webserver môže do odpovede webserver môže do odpovede „pribaliť“ špeciálne dáta, ktorým hovoríme „pribaliť“ špeciálne dáta, ktorým hovoríme cookies. cookies.

Page 14: Architektúra webu

Podstatou cookies je, že klient pri každej Podstatou cookies je, že klient pri každej ďalšej komunikácii so serverom pošle vždy ďalšej komunikácii so serverom pošle vždy všetky cookies naspäť. Toto sa najčastejšie všetky cookies naspäť. Toto sa najčastejšie využíva na identifikáciu opakovanej využíva na identifikáciu opakovanej komunikácie s tým istým klientom.komunikácie s tým istým klientom.

platnosť dokumentu:platnosť dokumentu: dátum dokedy je dátum dokedy je dokument aktuálny a informácia o tom, či dokument aktuálny a informácia o tom, či sa má ukladať v cache-pamäti alebo nie; sa má ukladať v cache-pamäti alebo nie; ďalšie metadátaďalšie metadáta potrebné na spracovanie potrebné na spracovanie dokumentu: typ odoslaných dát (MIME), dokumentu: typ odoslaných dát (MIME), veľkosť, kódovanie, a pod. veľkosť, kódovanie, a pod.

MetaúdajeMetaúdaje

Page 15: Architektúra webu

Webový obsah a webové aplikácie Webový obsah a webové aplikácie

Protokol HTTP umožňuje prenášať dáta v ľubovoľnom formáte, a tak Protokol HTTP umožňuje prenášať dáta v ľubovoľnom formáte, a tak publikovať na webe môžeme vlastne akýkoľvek súbor. publikovať na webe môžeme vlastne akýkoľvek súbor.

Podstatou webu je však jeho hypertextový obsah. Podstatou webu je však jeho hypertextový obsah.

Hypertext Hypertext je text obohatený o tzv. je text obohatený o tzv. hypertextové odkazyhypertextové odkazy, ktoré sú linkami , ktoré sú linkami z jedného dokumentu do druhého. z jedného dokumentu do druhého.

Podstatou hypermédií je práve možnosť ľubovoľne sa odkazovať v Podstatou hypermédií je práve možnosť ľubovoľne sa odkazovať v dokumente na iné dokumenty. Základným typom dát na webe sú teda dokumente na iné dokumenty. Základným typom dát na webe sú teda hypertextové dokumenty v jazyku hypertextové dokumenty v jazyku HTMLHTML. Tento jazyk definuje . Tento jazyk definuje predovšetkým štruktúru dokumentov. Pre ich typografickú úpravu a predovšetkým štruktúru dokumentov. Pre ich typografickú úpravu a grafické spracovania sa používa jazyk grafické spracovania sa používa jazyk kaskádových štýlov kaskádových štýlov (CSS). (CSS).

Page 16: Architektúra webu

Webový obsah a webové aplikácie Webový obsah a webové aplikácie

HTML dokumenty môžu byť obohatené o rôzny multimediálny obsah. HTML dokumenty môžu byť obohatené o rôzny multimediálny obsah.

hovoríme o hovoríme o hypermediálnych hypermediálnych dokumentoch, ktoré môžu obsahovať vložené dokumentoch, ktoré môžu obsahovať vložené obrázky a zvuky v rôznych formátoch. obrázky a zvuky v rôznych formátoch.

Aj keď natívne (t.j. samy od seba) prehliadače podporujú iba niekoľko Aj keď natívne (t.j. samy od seba) prehliadače podporujú iba niekoľko základných formátov, ďalšie formáty je možné doinštalovať vo forme rôznych základných formátov, ďalšie formáty je možné doinštalovať vo forme rôznych pluginovpluginov. .

Takto môžeme prehliadač obohatiť o schopnosť prehrávať video ako aj Takto môžeme prehliadač obohatiť o schopnosť prehrávať video ako aj zobrazovať pomerne pokročilé multimediálne formáty, ako je napr. veľmi zobrazovať pomerne pokročilé multimediálne formáty, ako je napr. veľmi populárny formátpopulárny formát Flash. Flash.

Page 17: Architektúra webu

Webový obsah a webové aplikácie Webový obsah a webové aplikácie

HTML dokumenty môžu byť tiež obohatené o tzv. skripty. HTML dokumenty môžu byť tiež obohatené o tzv. skripty.

Skript je programový kód vložený do dokumentu, ktorý:Skript je programový kód vložený do dokumentu, ktorý:

sa v prehliadači inisa v prehliadači iniccializuje a vykoná po načítaní stránky, ializuje a vykoná po načítaní stránky,

prípadne potom ako ho používateľ aktivuje kliknutím na nejaký ovládací prípadne potom ako ho používateľ aktivuje kliknutím na nejaký ovládací prvok. prvok.

môže vypísať hlásenie, môže spracovať a prepísať časť dokumentu, môže vypísať hlásenie, môže spracovať a prepísať časť dokumentu,

skript sa vykoná v prehliadači, hovoríme o tzv. skriptovaní alebo tiež skript sa vykoná v prehliadači, hovoríme o tzv. skriptovaní alebo tiež programovaní na strane klienta programovaní na strane klienta (client-side). (client-side).

Najpoužívanejším skriptovacím jazykom je jazyk Najpoužívanejším skriptovacím jazykom je jazyk JavaScript JavaScript (niekedy tiež ECMAScript),(niekedy tiež ECMAScript),

na skriptovaní stavia aj v súčasnosti veľmi populárna technológia na skriptovaní stavia aj v súčasnosti veľmi populárna technológia AJAXAJAX, ktorá nám umožňuje pomocou skriptu načítať doplňujúce , ktorá nám umožňuje pomocou skriptu načítať doplňujúce dáta z webservera a následne ich do stránky vložiť bez nutnosti dáta z webservera a následne ich do stránky vložiť bez nutnosti načítať a pregenerovať celú stránku. načítať a pregenerovať celú stránku.

Page 18: Architektúra webu

Webový obsah a webové aplikácie Webový obsah a webové aplikácie

programovaním na strane servera programovaním na strane servera (server-side): (server-side):

V takomto prípade HTML dokumenty nie sú dopredu pripravené a uložené na V takomto prípade HTML dokumenty nie sú dopredu pripravené a uložené na webovom serveri, ale sú vytvárané na serveri špeciálnym programom. webovom serveri, ale sú vytvárané na serveri špeciálnym programom.

v praxi sa používajú predovšetkým jazyky PHP, Java, ASP, a niektoré ďalšie. v praxi sa používajú predovšetkým jazyky PHP, Java, ASP, a niektoré ďalšie. Princíp fungovania je vždy jednotný a je založený na tzv. rozhraní Princíp fungovania je vždy jednotný a je založený na tzv. rozhraní CGI CGI (Common Gateway Interface): (Common Gateway Interface):

1. webserver dostane požiadavku od klienta a pri jej spracovaní zistí, že nejde o 1. webserver dostane požiadavku od klienta a pri jej spracovaní zistí, že nejde o požiadavku na statický HTML dokument, ale na server-side skript (najčastejšie požiadavku na statický HTML dokument, ale na server-side skript (najčastejšie podľa koncovky súboru, napr. „.php“); podľa koncovky súboru, napr. „.php“);

2. webserver inicializuje a vykoná príslušný skript, pričom na vstupe mu odovzdá 2. webserver inicializuje a vykoná príslušný skript, pričom na vstupe mu odovzdá dotazovú dotazovú časť URI adresy, prípadne dáta zaslané metódou POST; časť URI adresy, prípadne dáta zaslané metódou POST;

3. skript po vykonaní vráti výstup webserveru – v typickom prípade vygenerovaný 3. skript po vykonaní vráti výstup webserveru – v typickom prípade vygenerovaný HTML dokument; HTML dokument;

4. webserver odošle klientu HTTP odpoveď s vygenerovaným dokumentom. 4. webserver odošle klientu HTTP odpoveď s vygenerovaným dokumentom.

Page 19: Architektúra webu

Webový obsah a webové aplikácie Webový obsah a webové aplikácie

Zložitejšie programy vykonávané touto technikou na webovom serveri Zložitejšie programy vykonávané touto technikou na webovom serveri nazývame nazývame webové aplikáciewebové aplikácie. .

tento pojem je spájaný predovšetkým so server-side programovaním, moderné tento pojem je spájaný predovšetkým so server-side programovaním, moderné webové aplikácie ho často kombinujú aj so skriptovaním na strane klienta, webové aplikácie ho často kombinujú aj so skriptovaním na strane klienta, pričom sa hojne využíva technológia AJAX. pričom sa hojne využíva technológia AJAX.

Väčšina stránok, ktoré navštevujeme, sú v skutočnosti webové aplikácie. Celá Väčšina stránok, ktoré navštevujeme, sú v skutočnosti webové aplikácie. Celá táto oblasť v súčasnosti prudko napreduje a intenzívne sa vyvíja vo všetkých táto oblasť v súčasnosti prudko napreduje a intenzívne sa vyvíja vo všetkých svojich aspektoch. svojich aspektoch.

Page 20: Architektúra webu

Ďalšie webové technológie Ďalšie webové technológie

V tejto časti sme vymenovali hlavné technológie, ktoré vytvárajú V tejto časti sme vymenovali hlavné technológie, ktoré vytvárajú architektúru webu. architektúru webu.

Tento zoznam však nie je úplný, web je veľmi dynamické médium a Tento zoznam však nie je úplný, web je veľmi dynamické médium a rôzne nové technológie sa objavujú veľmi často, pritom niektoré iné rôzne nové technológie sa objavujú veľmi často, pritom niektoré iné po čase upadnú do zabudnutia, sú nahradené inými alebo sa z po čase upadnú do zabudnutia, sú nahradené inými alebo sa z nejakého dôvodu prestanú používať. nejakého dôvodu prestanú používať.

Trend:Trend:

webové vyhľadávačewebové vyhľadávače

systémy správy obsahusystémy správy obsahu

syndikácia webového obsahu syndikácia webového obsahu

Page 21: Architektúra webu

Ďalšie webové technológie Ďalšie webové technológie

webové vyhľadávače: webové vyhľadávače: webových stránok je obrovské množstvo a sú veľmi webových stránok je obrovské množstvo a sú veľmi premenlivej kvality, nájsť na webe to čo hľadáme si bez vyhľadávačov už premenlivej kvality, nájsť na webe to čo hľadáme si bez vyhľadávačov už neodkážeme predstaviť. Význam vyhľadávačov stále rastie: kým pred niekoľkými neodkážeme predstaviť. Význam vyhľadávačov stále rastie: kým pred niekoľkými rokmi bolo najcennejšou komoditou na webe ľahko zapamätateľné a výstižné rokmi bolo najcennejšou komoditou na webe ľahko zapamätateľné a výstižné doménové meno, dnes jeho význam klesá – oveľa dôležitejšie je byť dostatočne doménové meno, dnes jeho význam klesá – oveľa dôležitejšie je byť dostatočne vysoko vo výsledkoch vyhľadávania.vysoko vo výsledkoch vyhľadávania.

systémy správy obsahu systémy správy obsahu (Content Management System, (Content Management System, CMSCMS): je akákoľvek ): je akákoľvek webová aplikácia, ktorá nám umožňuje jednoduchou formou spravovať štruktúru a webová aplikácia, ktorá nám umožňuje jednoduchou formou spravovať štruktúru a obsah webovej stránky. Jej úlohou je, aby sme obsah mohli tvoriť jednoducho, často obsah webovej stránky. Jej úlohou je, aby sme obsah mohli tvoriť jednoducho, často bez podrobných znalostí webových jazykov ako HTML, CSS, PHP a pod. Aj typický bez podrobných znalostí webových jazykov ako HTML, CSS, PHP a pod. Aj typický blog a wiki sú vlastne CMS systémy; blog a wiki sú vlastne CMS systémy;

syndikácia webového obsahu syndikácia webového obsahu (Really Simple Syndication, (Really Simple Syndication, RSSRSS): RSS súbor veľmi ): RSS súbor veľmi stručne opisuje obsah stránky. RSS mávajú hlavne stránky, ktoré sa rýchlo a stručne opisuje obsah stránky. RSS mávajú hlavne stránky, ktoré sa rýchlo a pravidelne menia (spravodajstvo, blogy). RSS nám umožňuje mať prehľad o tom, či pravidelne menia (spravodajstvo, blogy). RSS nám umožňuje mať prehľad o tom, či sa na webe deje niečo nové a zaujímavé bez toho, aby sme stále prechádzali a sa na webe deje niečo nové a zaujímavé bez toho, aby sme stále prechádzali a kontrolovali množstvo stránok. Sledujeme len svoju RSS čítačku… kontrolovali množstvo stránok. Sledujeme len svoju RSS čítačku…