+ All Categories
Home > Technology > Web - Arhitectura Web

Web - Arhitectura Web

Date post: 28-Nov-2014
Category:
Upload: sabin-buraga
View: 1,941 times
Download: 7 times
Share this document with a friend
Description:
 
94
Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/ Tehnologii Tehnologii Web Web <?xml version=“1.0” ?> <curs desc=“…” /> Tehnologii Web Dr. SabinCorneliu Buraga Facultatea de Informatica Universitatea “A.I.Cuza” – Iasi, Romania http://www.infoiasi.ro/~busaco/
Transcript
Page 1: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Tehnologii Web

Dr. Sabin­Corneliu BuragaFacultatea de Informatica

Universitatea “A.I.Cuza” – Iasi, Romania

http://www.infoiasi.ro/~busaco/

Page 2: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

SpatiulSpatiul WWorld orld WWideide WWebeb

ArhitecturaArhitectura

DetaliiDetalii in in [PSW, 13[PSW, 13‐‐43] [TX, 1143] [TX, 11‐‐28]28]

Page 3: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

“De la un anumit punct incolo, nu mai exista cale de intoarcere. Acela este punctul ce trebuie atins.”

Franz Kafka

Page 4: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

intrebare

Ce reprezinta Web‐ul?

Page 5: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

cuprins

Spatiul World‐Wide Web: “definitii”, istorie, constituenti

HipertextulAdresarea resurselor Web: identificatori uniformi de resurse (URI)

Protocolul HTTP (HyperText Transfer Protocol)Privire de ansamblu

Page 6: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Web, WWW, “pinza de paianjen mondiala”

Sistem de distributie locala sau globala a informatiilor hipermedia

Page 7: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Serviciu InternetWWW ≠ Internet

Bazat pemodelul client/server si pe hipertext

Page 8: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

CERN – 1989, Sir Tim Berners‐Lee et al.

“Information Management: A Proposal”

http://www.w3.org/History/1989/proposal.html

Page 9: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Page 10: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Functioneaza conform reglementarilorConsortiului Web

MIT, ERCIM, Keio UniversityAdobe, HP, IBM, Microsoft, Sun,…

www.w3.org

Page 11: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Ideea:integrarea unor sisteme informationale disparate

intr‐un mod unitar,fara diferente intre sursele de date

“Anything can link to anything”

Page 12: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Scopuri principale – Tim Berners‐Lee:independenta de dispozitivindependenta de software

scalabilitateamultimedia

caracter deschis open standards

Page 13: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

world wide web

Resursele sint identificate prin adresa lor– identificator uniform de resurse (URI)

Existenta unui protocol (e.g., HTTP) pentru accesul la continutul resurselor

Resursele (vazute ca documente) includ marcaje (adnotari)

Marcajele contin la rindul lor URI‐uripaginipaginiWebWeb

Page 14: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Relatiile dintre o resursa Web, adresa ei (URI) sireprezentarea structurata a resursei

Reprezentarea = date propriu‐zise + meta‐date (date despre date)

world wide web

Page 15: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

intrebare

Ce inseamna hipertextul?

Page 16: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

“Material scris sau grafic interconectatintr‐o maniera complexa care in modconventional nu poate fi reprezentat pe hirtie.” – Ted Nelson, 1965

hipertext: definire

Page 17: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Text non‐liniarForma de document electronicMetoda de organizare complexa a informatiilor

Forma de comunicare dintre om si calculator,interfata fiind hipertextul

hipertext: definire

Page 18: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Vannebar Bush – As We May Think (1945)MEMEX (MEMory EXtended)

hipertext: istoric

Page 19: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Page 20: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Douglas EngelbartAugment (1968)

mouse, interfete grafice, procesoare de text,posta electronica, script‐uri, ferestre pe ecran etc.

hipertext: istoric

Page 21: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Ted NelsonXanadu (prototip 1991) termenul “hipertext”

hipermedia = hipertext (+multimedia)multimedia = Σmedii

medii: continue (audio, video) | discrete (text)

hipertext: istoric

Page 22: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

hipertext: ingrediente

Noduri = concepteLegaturi = relatii

Page 23: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

hipertext: ingrediente

Noduri interconectate prin legaturi

Nod sursa = referinta (ancora)Nod destinatie = referent (ancora)

Page 24: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Bi‐ sau uni‐directionaleReferentiale (non‐ierarhice) & organizationale(ierarhice, structurale)

Statice sau dinamice

hipertext: legaturi

Page 25: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

hipertext

Documente hipertextPartea de continut – tipuri de mediiPartea de organizare (noduri & legaturide structura – secventa sau explorare)

Partea de prezentare(textuala, grafica, multimedia, 3D, mixta)

Page 26: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

hipertext

Structuri hipermediaDocumente hipertext/hipermedia interconectate

Fenomenul “lost in space”

Page 27: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

hipertext

Modul de explorare a hipertextului: metafora cartii tiparitestructura liniara cu salturistructura ierarhicastructura semanticacombinata

Structura liniara cu salturi

Page 28: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

intrebare

Cum identificam (adresam) resursele Web?

Page 29: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

Accesul la o resursa Web se realizeazaprin intermediul identificatorilor uniformi de resurse – URI (Uniform Resource Identifiers)

RFC 2396, 3986

Page 30: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI: definitii

Resursa“lucru” care poseda o identitate

Page 31: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI: definitii

Identificatorobiect care poate juca rolul unei resurse

(secventa de caractere avind o sintaxa precisa)

Page 32: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI: definitii

Uniformitatese permite o interpretare semantica uniformaa mai multor conventii sintactice comune

desemnind identificatori ai unor resurse eterogene

Page 33: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Uniform Resource Locatoridentifica resursele prin reprezentarea

mecanismului de accesare(adresa de retea, domeniu simbolic)

RFC 2717, 2718

URI = URL + URN

Page 34: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Uniform Resource Locator

http://www.infoiasi.ro/~busaco/teach/mailto:[email protected]

ftp://ftp.funet.fi/pub/README.txttel:+40232201090

URI = URL + URN

Page 35: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

Uniform Resource Nameidentifica resursele prin nume,

intr‐o forma persistenta, chiar daca resursa este inaccesibila sau a disparut

RFC 2141

URI = URL + URN

Page 36: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI = URL + URN

urn:infoiasi.ro:BookInfourn:mozilla:package:communicator

urn:ISBN:973‐681‐988‐4urn:ietf:rfc:2401

Page 37: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

schemaschema://://authorityauthority//pathpath??queryquery

http://www.pinguin.info/cauta.php?id=Tux

Page 38: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

Caractere rezervate: ; / ? : @ & = + $ ,

Se codifică în baza 16, precedate de %

Exemplu: Spaţiul va deveni %20

De De cece??

Page 39: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

URL‐uri absolute http://www.infoiasi.ro/~busaco/cv.html

URL‐uri relative../../csb.css

Page 40: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

“Fragmente” dintr‐un conținut pot fireferite prin URIref

(referințe, fragment identifiers)URI#URIref

index.html#resurse

Page 41: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

O resursa Web poate fi identificatade unul sau mai multe URI‐uri

URI aliases (de evitat)

Utilizarea URI‐urilor trebuie sa fie consistenta

Page 42: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

URI

URI‐urile trebuie considerate opace(nu trebuie “ghicit” tipul continutuluiinspectind URI‐ul asociat resursei)

Starea resursei poate evolua in timp,dar URI‐ul asociat ei nu

Page 43: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

IRI

Internationalized Resource IdentifierComplementar URI‐ului – vezi RFC 3987

Permite folosirea unor caractere din seturi decaractere mai largi decit ASCII – e.g., Unicode

Page 44: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

IRI

Exemplu: 

http://color.org/ros&#xE9 este identic cu URI‐ulhttp://color.org/ros&#233 (in HTML/XML) sauhttp://color.org/ros&#xE9 (in XML) si poate fireprezentat vizual prin http://color.org/rosé

Page 45: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

intrebare

Cum are loc transferul?

Page 46: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP

HyperText Transfer Protocol

Bazat pe TCP/IP – vezi RFC 2616

Protocol fiabil, de tip cerere/raspunsPort standard de acces: 80

HTTP/0.9, HTTP/1.0, HTTP/1.1

Page 47: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP

Componente principaleServer Web (daemon – “spirit protector”: httpd)Apache, MS Internet Information Services etc.

Client Web (navigator, browser, robot,…)Netscape, Mozilla (Firefox), Internet Explorer, Opera, wget, Teleport, iTunes,…

Page 48: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP

Cererea & răspunsulAccesarea (eventual, modificarea)reprezentării resursei via URI‐ul asociat

Server Web

Client Web

cerere

răspuns

Page 49: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

MesajUnitatea de baza a unei comunicatii HTTP

(cerere sau raspuns)

Page 50: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

IntermediarProxyPoartaTunel

Page 51: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

ProxyLocalizat in proximitatea utilizatoruluiAre rol atat de server, cat si de client 

Server Web

Client Web P

roxy

Page 52: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

Poarta (gateway)Intermediar care ascunde serverul tinta,

clientul nestiind aceasta

PoartaWeb

Client Web

Server

Server

Page 53: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

TunelRol de retransmitere (eventual, criptata)

a mesajului

Page 54: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: termeni

CacheDepozit local de stocare – în memorie, pe disc –a mesajelor (datelor) la nivel de server/client

Page 55: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: mesaje

Mesaj HTTP = antet + corp

Antet = multime de cimpuriMessage-header ::= field-name “:” [ field-value ] CRLF

Page 56: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: mesaje

Cerere HTTP:Request ::= Method Request-URI ProtocolVersion CRLF[ Message-header ] [ CRLF MIME-data ]GET /index.html HTTP/1.1 CRLF Host: www.pinguin.info

Raspuns HTTP:Status-line ::= HTTP-version Digit Digit Digit Reason CRLFHTTP/1.1 200 OK CRLF …

Page 57: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

GETcerere de acces la reprezentarea

unei resurse (e.g., cod HTML, CSS, SVG, PDF,…)

Page 58: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

HEADsimilara cu GET, dar in mod uzual

se doresc doar meta‐informatii (e.g., tipul)

Page 59: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

POSTutilizata pentru trimiterea unor entitati

(date, actiuni) spre server

e.g., datele dintr‐un formular

Page 60: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

PUTplaseaza reprezentarea unei resurse pe server

Page 61: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

OPTIONSfurnizeaza optiunile dialogului intre client & server

(e.g., negocierea reprezentarii)

Page 62: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: metode

DELETEsterge o resursa (reprezentarea ei) de pe server

Page 63: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: reprezentari ale resursei

Codificarea setului de caractere (encoding)

ISO‐8859‐1 (implicit), ISO‐8859‐2,…

Page 64: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: reprezentari ale resursei

Tipul continutului resurseiMIME type

Veziurmatoareleslide‐uri

Page 65: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: reprezentari ale resursei

Codificarea mesajelorcomprimare, asigurarea identitatii

si/sau integritatii

gzip, compress,…

Page 66: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: reprezentari ale resursei

Formatul reprezentariitext (HTML, text obisnuit, XML,...) sau binar

Page 67: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Content­Type MIME (Multipurpose Internet Mail Extensions)

Specifica un set de tipuri primare de continut+ sub­tipuri aditionale

Permite transferul datelor de orice tip

Content-Type: tip/subtip

Page 68: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principaletext desemneaza formate textualetext/plain – fisier text neformatattext/html – document HTML(HyperText Markup Language)text/css – foaie de stiluri CSS(Cascading Style Sheet)

Page 69: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principaleimage specifica formate graficeimage/gif – imagini in format GIF(Graphical Interchange Format)image/jpeg – fotografii in format JPEG(Joint Picture Experts Group)image/png – imagini PNG(Portable Network Graphics)

Page 70: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principaleaudio desemneaza continuturi sonoreaudio/mpeg – fisier MP3 – specificatia privitoare la date audio a standardului MPEG (Motion Picture Experts Group)

Page 71: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principalevideo defineste continuturi video (animatii, filme)video/mpeg – fisier MPEG(Motion Picture Experts Group)

Page 72: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principaleapplication defineste aplicatiile ce vor fi executate la nivel de clientapplication/executable – program executabilapplication/javascript – program JavaScriptapplication/octet­stream – sir de octeti

Page 73: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Tipuri MIME principalemultipart utilizat pentru transferul datelor compusemultipart/mixed – continut mixtmultipart/alternative – continuturi alternative

Page 74: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute)

Location

Location “:” “http://” host [ “:” port ] [ abs_path ]

Location: http://www.infoiasi.ro:8080/s-a_mutat.html

folosit la redirectarea spre o alta reprezentare a resursei

URL encoding

Page 75: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute) – altele

Accept – specifica tipul/tipurile de reprezentareacceptate de client, plus calitatea

Cache‐Control – stabileste parametrii de controlai cache‐ului (la nivel de proxy, uzual)

Referer – desemneaza URI‐ul resurseicare a referit resursa curenta

Page 76: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: cimpuri (atribute) – altele

Host – specifica adresa masinii de pe care se solicita accesul la o resursa

Authorization si WWW‐Authenticate – utilizatela autentificarea accesului la o resursa protejata

Alte detalii la www.w3.org/Protocols/HTTP/

Page 77: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: starea

Coduri de informare (1xx)100 Continue, 101 Switching Protocols

Coduri de succes (2xx)200 Ok, 201 Created, 202 Accepted

Coduri de redirectare (3xx)300 Multiple Choices, 302 Moved Temporarily

Page 78: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: starea

Coduri de eroare client (4xx)400 Bad Request, 403 Forbidden, 404 Not Found

Coduri de eroare server (5xx)501 Not Implemented, 503 Service Unavailable

Coduri de avertisment: 0..99

Page 79: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: jurnalizarea cererilor

dyn419.win.tue.nl – licenta [29/Sep/2007:11:08:04 +0300] "GET /~busaco/teach/bsc2006/ HTTP/1.1" 200 24757

dyn419.win.tue.nl – – [29/Sep/2007:11:07:54 +0300] "GET /~busaco/teach/bsc2006 HTTP/1.1" 401 1283

193.226.24.219 – – [29/Sep/2007:11:06:17 +0300] "GET / HTTP/1.1" 403 1039

crawl.googlebot.com – – [29/Sep/2007:11:05:59 +0300] "GET /~busaco/paint/days/trio.jpg HTTP/1.1" 304 –

proxy.info.uaic.ro – – [29/Sep/2007:11:05:38 +0300] "GET /favicon.ico HTTP/1.1" 404 1035

rat.cluj.astral.ro – – [29/Sep/2007:11:04:27 +0300] "GET /~linux/ HTTP/1.0" 200 4974

triton.france3.fr – – [29/Sep/2007:11:04:27 +0300] "GET /~acf/ HTTP/1.1" 200 446

triton.france3.fr – – [29/Sep/2007:11:04:27 +0300] "GET /~acf HTTP/1.1" 301 327

Page 80: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: exemplu cerere

GET / HTTP/1.1Host: www.pinguin.infoUser-Agent: Mozilla/5.0 (X11; U; Linux i686; en-

US; rv:1.8.0.5) Gecko/20060719 Firefox/1.5.0.5Accept: text/html, image/gif, image/jpeg, */*Accept-Language: en-usAccept-Encoding: gzip,deflate,compress,identityConnection: Keep-Alive

metoda

Page 81: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

HTTP: exemplu raspuns

HTTP/1.1 302 FoundDate: Tue, 29 Jan 2008 07:17:13 GMTServer: Apache/2.0.54 (Win32) PHP/5.0.4Location: http://www.pinguin.info/index.htmlContent-Length: 295Connection: closeContent-Type: text/html; charset=iso-8859-1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><html><head><title>302 Found</title></head><body><h1>Found</h1><p>The document has moved <a href="http://www.pinguin.info/index.html">here</a>.</p><hr /><address>Apache/2.0.54 Server at www.pinguin.info Port 80</address></body></html>

stareacimpuri

continut

Page 82: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

Web‐ul = spatiu informational compusdin elemente de interes, numite resurse, 

desemnate de identificatori globali – URI/IRI

Page 83: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

Aspecte de interesIdentificareaInteractiunea

Reprezentarea prin formate de date 

Detalii la www.w3.org/TR/webarch/(recomandare W3C, 2004)

Page 84: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

Identificarea resurselorFiecare resursa trebuie sa fie adresabilaFiecarei resurse i se asigneaza un URI distinct (reducerea coliziunilor)

Un URI va avea un proprietar(persoana, organizatie, specificatie,...)

De incurajat utilizarea consistenta a URI‐urilorOpacitatea URI – natura unei resurse nu este datade adresa (URI), ci de reprezentare

Page 85: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

InteractiuneaAgent Web = persoane ori software actionind peWebAgent‐utilizator = software actionind in numeleunui utilizator (uman)

Agent software = servere, proxy‐uri, roboti, navigatoare, player‐e multimedia etc.

Comunicarea intre agenti implica URI‐uri, mesaje sidate, via protocoale (HTTP, FTP, SOAP, SMTP,...)

Un mesaj poate fi compus din date & meta‐date (date descriind date)

Page 86: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

InteractiuneaAccesul la o resursa se realizeaza prin URI (dereferentiere), eventual implicind mai multi pasi, rezultind o reprezentare a resursei

O reprezentare desemneaza datele ce codificainformatia despre starea unei resurse

Siguranta interactiunii – agentul nu realizeaza nicio actiune colaterala (side­effects) in cadrulinteractiunii

Preluarea unei resurse (retrieval) trebuie sa fie sigura

Page 87: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

privire de ansamblu

Reprezentarea prin formate de dateWeb‐ul nu impune utilizarea unor formate de date, dar incurajeaza refolosirea celor existente

Aspecte importante: formate binare vs. textuale, controlul versiunilor, extensibilitatea, compunerea formatelor, separarea continutului, prezentarii & interactiunii

Hipertextul = includerea, via URI‐uri, de referintela alte resurse in cadrul unei resurse

Legatura in sensul de “relatie”, nu de “conectare fizica”

Page 88: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

situri & aplicatii Web

Sit Websistem pe care ruleaza un server Web gazduindo serie de pagini (documente) WWW inrudite– ale unei organizatii, companii sau persoane

Page 89: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

situri & aplicatii Web

Sit WebOfera informatii unitare

Are asociata o adresa publica (vizibila), bazata pe un domeniu Internet

Serverul Web poate gestiona simultanmai multe situri – gazduire virtuala

Poate fi disponibil in intranet sau extranet

Page 90: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

situri & aplicatii Web

Aplicatie Webcolectie interconectata de pagini Web 

cu continut generat dinamic, menita a oferiutilizatorilor o functionalitate specifica

Page 91: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

situri & aplicatii Web

Aplicatie WebInteractiunea dintre aplicatie si utilizatori are loc 

via o interfataWeb

Uzual, sit Web = aplicatie Web

Exemple: Amazon, Blogger, Expedia, Flickr, Kartoo, PHPMyAdmin, webmin, Wikipedia, YouTube etc.

Page 92: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

situri & aplicatii Web

Arhitectura unei aplicatii Web

Page 93: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

rezumat

Spatiul World‐Wide WebHipertextul

Identificatori uniformi de resurseProtocolul HTTP

Privire de ansamblu

Page 94: Web - Arhitectura Web

Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/

TehnologiiTehnologii WebWeb <?xml version=“1.0” ?><curs desc=“…” />

??


Recommended