+ All Categories
Home > Technology > Programare Web - Arhitectura WWW

Programare Web - Arhitectura WWW

Date post: 30-Nov-2014
Category:
Upload: sabin-buraga
View: 7,181 times
Download: 7 times
Share this document with a friend
Description:
An overview regarding Internet and Web architecture, including Web addressing and HTTP protocol.
50
Dr. Sabin Buraga http://www.infoiasi.ro/~busaco/ 1 Tehnologii Web Tehnologii Web 2007 2007 Programare Web Programare Web Dr. Sabin-Corneliu Buraga Facultatea de Informatica Universitatea “A.I.Cuza” – Iasi, Romania http://www.infoiasi.ro/~busaco/
Transcript
Page 1: Programare Web - Arhitectura WWW

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

1

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

Programare WebProgramare Web

Dr. Sabin-Corneliu BuragaFacultatea de Informatica

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

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

Page 2: Programare Web - Arhitectura WWW

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

2

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07 Spatiul Spatiul WWorld-orld-WWide ide

WWebebArhitectura

Detalii in [PSW, 13-43] [TX, 11-28]

Page 3: Programare Web - Arhitectura WWW

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

3

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

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

Franz Kafka

Page 4: Programare Web - Arhitectura WWW

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

4

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

cuprinscuprins

• Internet:notiuni de baza & organizare

• Spatiul World-Wide Web: “definitii”, istorie, constituenti

• Adresarea resurselor Web: identificatori uniformi de resurse (URI)

• Protocolul HTTP (HyperText Transfer Protocol)

• Privire de ansamblu

Page 5: Programare Web - Arhitectura WWW

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

5

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

cuprinscuprins

• Internet– Preliminarii– Notiuni importante– Servicii– Organizare– Maniere de adresare

Page 6: Programare Web - Arhitectura WWW

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

6

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Preliminarii– Nevoia de comunicare– Masini mecanice (sec.18)– Masini cu aburi (sec.19)– Colectare, prelucrare & distributie

de informatii (sec.20)– Puncte de vedere:

•centru de calcul mamut (IBM ’60)•PC-uri (’80)•retele mondiale (’90)•retele wireless (prezent)

internetinternet

Page 7: Programare Web - Arhitectura WWW

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

7

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Retea de calculatoare– colectie interconectata de

calculatoare autonome• Scop & utilizari ale retelelor:

– partajarea resurselor (fizice, logice, date)

– fiabilitate & reducerea costurilor– mediu de comunicare intre oameni– acces la informatii de la distanta– divertisment interactiv

internetinternet

Page 8: Programare Web - Arhitectura WWW

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

8

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Nod: calculator al unei retele, avind asociata o adresa

• Resursa: programe, echipamente, date• Comunicatie: modul de a schimba informatii

intre calculatoarele unei retele (via canale)• Protocol: regulile prin care se realizeaza

comunicatia• Difuzare: trimiterea de informatii la mai

multe calculatoare (multicast) sau la toate (broadcast)

• Pachet: modalitate de stocare a datelor

internet | notiuniinternet | notiuni

Page 9: Programare Web - Arhitectura WWW

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

9

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Modelul client/server– Server entitate (hardware si/sau

software) care ofera un set de servicii– Client entitate (hardware si/sau

software) care solicita servicii

– Serviciu facilitate oferita de un server si solicitata de unul/mai multi clienti •Exemple: servicii de stocare (fisiere, baze de

date,…), servicii de transmitere a postei, servicii e-commerce etc.

internet | notiuniinternet | notiuni

Page 10: Programare Web - Arhitectura WWW

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

10

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Modelul client/server– Un server poate oferi un serviciu

mai multor clienti (in mod concurent)– Un server poate oferi

mai multe servicii simultan •Exemplu: stocare + e-mail + Web

– Serviciile se pot efectua cu confirmare sau nu a raspunsului (telefon vs. posta)

– Serverele si clientii “discuta” via protocoale de comunicatie (FTP, HTTP,…)

internet | notiuniinternet | notiuni

Page 11: Programare Web - Arhitectura WWW

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

11

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Dupa componenta: omogene & eterogene• Dupa dispunere spatiala:

– Multi-calculator– LAN (Local Area Network) – camera, cladire,

campus (CAN – Campus Area Network)– MAN (Metropolitan Area Network) – oras– WAN (Wide Area Network) – tara, continent– Internet – planeta

• Conform transmisiei:– retele cu difuzare (un singur canal de

comunicatie)– retele peer-to-peer – punct-la-punct

(conexiuni multiple intre perechi de masini)

internet | tipuri de internet | tipuri de reteleretele

Page 12: Programare Web - Arhitectura WWW

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

12

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Se bazeaza pe stiva de protocoale TCP/IP:– Nivelul de aplicatii (SMTP – Simple Mail

Transfer Protocol, FTP – File Transfer Protocol, HTTP – HyperText Transfer Protocol,…)

– Nivelul transport (TCP – Transmission Control Protocol, UDP – User Datagram Protocol)

– Nivelul retea (IP – Internet Protocol)– Nivelul legatura de date (ARP – Address

Resolution Protocol, RARP – Reverse ARP)

internet | protocoaleinternet | protocoale

Page 13: Programare Web - Arhitectura WWW

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

13

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Categorii principale:– Gazde (hosts) – orice sistem computational

conectat la Internet (comunicind via TCP/IP)• Ruleaza aplicatii de inter-conectare

– Retele (networks) – colectii de minim 2 gazde interconectate via o tehnologie de conectare fizica• Arhitectura Internet este independenta de modul

de conectare fizica (retelistica)– Rutere (routers) – dispozitive oferind

conectivitatea intre retele individuale• Dirijarea datelor se poate face software ori

hardware

internet | componenteinternet | componente

Page 14: Programare Web - Arhitectura WWW

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

14

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Posta electronica (e-mail)• Transfer de fisiere (FTP)• Grupuri de stiri (news)• Cautare de fisiere (Archie)• Organizare de date (Gopher)• Comunicatii inter-personale (IRC)• Spatiul World-Wide Web (WWW)• Mesagerie instantanee (instant

messanging)• Partajare de fisiere (file sharing)• …

internet | serviciiinternet | servicii

Page 15: Programare Web - Arhitectura WWW

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

15

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Coordonare– ISOC (Internet SOCiety)– IETF (Internet Engineering Task

Force)

• Reglemententari– Request For Comments (RFC)

•Specifica arhitectura si standardele Internet

internet | organizareinternet | organizare

Page 16: Programare Web - Arhitectura WWW

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

16

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Moduri de adresare– Adrese fizice (placa de retea)

•Ethernet: 00-13-02-6E-E0-E5– Adrese logice numerice

•IP (4 octeti): 193.231.30.225•IPv6 (16 octeti)

– Adrese logice simbolice (DNS – Domain Name System)•Domenii, nume de masina:

thor.info.uaic.ro•Masina locala: localhost (127.0.0.1)

internet | adresareinternet | adresare

Page 17: Programare Web - Arhitectura WWW

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

17

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Domenii simbolice primare:– .org (organizatie)– .gov (guvernamental)– .mil (militar)– .int (organizatie internationala)– .edu (educational)– .com (comercial)– .net (intretinere retea/Internet)– corespunzatoare statelor

lumii: .ro .uk .it– de interes general: .info .biz

internet | adresareinternet | adresare

Page 18: Programare Web - Arhitectura WWW

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

18

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Fiecare domeniu poate avea in jurisdictie sub-domenii:– info.uaic.ro

•Un sub-domeniu poate include alte sub-domenii sau nume de masini–Nume simbolice: thor, fenrir,…–Alias-uri: www thor, ftp thor (www.infoiasi.ro thor.info.uaic.ro)

internet | adresareinternet | adresare

Page 19: Programare Web - Arhitectura WWW

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

19

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

internet | adresareinternet | adresare

Page 20: Programare Web - Arhitectura WWW

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

20

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

cuprinscuprins

• Spatiul WWW– Definitii & caracterizare– Adresarea resurselor via URI– Protocolul HTTP– Privire de ansamblu

Page 21: Programare Web - Arhitectura WWW

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

21

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

world-wide webworld-wide web• Web, WWW, “pinza de paianjen mondiala”• Sistem de distributie locala sau globala

a informatiilor hipermedia• Serviciu Internet (WWW Internet)• Bazat pe modelul client/server

si pe hipertext• CERN – 1989, Sir Tim Berners-Lee et al.

“Information Management: A Proposal”http://www.w3.org/History/1989/proposal.html

• Functioneaza conform reglementarilor Consortiului Web (>500 membri): www.w3.org

Page 22: Programare Web - Arhitectura WWW

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

22

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

world-wide webworld-wide web

• Ideea: integrarea unor sisteme informationale disparate intr-un mod unitar, fara diferente intre sursele de date

• Scopuri principale (Tim Berners-Lee):– Independenta de dispozitiv– Independenta de software– Scalabilitatea– Multimedia

• “Anything can link to anything”

Page 23: Programare Web - Arhitectura WWW

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

23

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

world-wide webworld-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-uri

Detalii: www.w3.org/TR/webarch/

pagini Web

Page 24: Programare Web - Arhitectura WWW

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

24

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

• Relatiile dintre o resursa Web, adresa ei (URI) si reprezentarea structurata a resursei

world-wide webworld-wide web

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

Page 25: Programare Web - Arhitectura WWW

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

25

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | definitieURI | definitie • Resursa – “lucru” care poseda o identitate• Identificator – obiect care poate juca rolul

unei resurse (secventa de caractere avind o sintaxa precisa)

• Uniformitate – se permite o interpretare semantica uniforma a mai multor conventii sintactice comune desemnind identificatori ai unor resurse eterogene

• URI Uniform Resource Identifier (RFC 2396, 3986)

Page 26: Programare Web - Arhitectura WWW

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

26

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | componenta URI | componenta

• URI = URL + URN• URL (Uniform Resource Locator)

– identifica resursele prin reprezentarea mecanismului de accesare (adresa de retea, domeniu simbolic)– http://www.infoiasi.ro/~busaco/teach/– mailto:[email protected]– ftp://ftp.funet.fi/pub/README.txt– tel:+40232201090

Page 27: Programare Web - Arhitectura WWW

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

27

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | componenta URI | componenta

• URI = URL + URN• URN (Uniform Resource Name)

– identifica resursele prin nume, intr-o forma persistenta, chiar daca resursa este inaccesibila sau a disparut–urn:infoiasi.ro:BookInfo–urn:mozilla:package:communicator–urn:schemas-microsoft-com:datatypes

Page 28: Programare Web - Arhitectura WWW

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

28

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | sintaxa & semanticaURI | sintaxa & semantica

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

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

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

─ Se codifica in baza 16

• Schema se considera case-insensitive

Page 29: Programare Web - Arhitectura WWW

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

29

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | sintaxa & semanticaURI | sintaxa & semantica • URL-urile pot fi absolute sau relative

– http://www.infoiasi.ro/~busaco/cv.html– ../../csb.css

• “Fragmente” dintr-un continut pot fi referite prin URIref (referinte, fragment identifiers)– URI#URIref– web.html#laborator

• Identificarea unei resurse se poate face indirect (e.g., mailto:[email protected] identifica o cutie postala Internet specificata prin schema mailto)

Page 30: Programare Web - Arhitectura WWW

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

30

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

URI | sintaxaURI | sintaxa & semantica& semantica

• O resursa Web poate fi identificata de unul sau mai multe URI-uri– URI aliases (de evitat)– Utilizarea URI-urilor trebuie sa fie

consistenta

• URI-urile trebuie considerate opace (nu trebuie “ghicit” tipul continutului inspectind URI-ul asociat resursei)– Starea resursei poate evolua in timp,

dar URI-ul asociat ei nu

Page 31: Programare Web - Arhitectura WWW

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

31

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

IRIIRI

• IRI = Internationalized Resource Identifier (RFC 3987)– Complementar URI-ului– Permite folosirea unor caractere

din seturi de caractere mai largi decit ASCII (de exemplu, Unicode)

– Exemplu: http://color.org/ros&#xE9 este identic cu URI-ul http://color.org/ros&#233 (in HTML/XML) sau http://color.org/ros&#xE9 (in XML) si poate fi reprezentat vizual prin http://color.org/rosé

Page 32: Programare Web - Arhitectura WWW

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

32

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | caracterizarehttp | caracterizare• HyperText Transfer Protocol• Bazat pe TCP/IP• Protocol fiabil, de tip cerere/raspuns• HTTP/0.9, HTTP/1.0, HTTP/1.1• Port standard de acces: 80• Arhitectura:

» Server Web (daemon HTTP – httpd)Apache, MS Internet Information Services etc.

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

Page 33: Programare Web - Arhitectura WWW

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

33

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | caracterizarehttp | caracterizare

• Cererea si raspunsul– Accesarea (eventual, modificarea)

reprezentarii resursei via URI-ul asociat

Page 34: Programare Web - Arhitectura WWW

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

34

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | termenihttp | termeni• Mesaj – unitatea de baza a unei

comunicatii HTTP (cerere sau raspuns)• Intermediar

– Proxy – cu rol atit de server, cit si de client – Poarta – intermediar care ascunde serverul

de origine, clientul nestiind acest lucru– Tunel – cu rol de retransmitere

(eventual, criptata) a mesajului• Cache – depozit local de stocare

(in memorie, pe disc) a mesajelor (datelor) la nivel de server/client

Page 35: Programare Web - Arhitectura WWW

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

35

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | mesajehttp | mesaje

• Mesaj HTTP = antet + corp• Antet = multime de cimpuri

Message-header ::= field-name “:” [ field-value ] CRLF• 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 CRLF– HTTP/1.1 200 OK CRLF …

Page 36: Programare Web - Arhitectura WWW

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

36

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | metodehttp | metode• GET – cerere de acces la reprezentarea

unei resurse (e.g., cod HTML, CSS, RSS, PDF,…)• HEAD – similara cu GET, dar in mod uzual

se doresc doar meta-informatii (e.g., tipul)• POST – utilizata pentru trimiterea

unor entitati (date, actiuni) spre server (e.g., datele dintr-un formular)

• PUT – plaseaza reprezentarea unei resurse pe server

• OPTIONS – furnizeaza optiunile dialogului intre client & server (e.g., negocierea reprezentarii)

• DELETE – sterge o resursa (reprezentarea ei) de pe server

Page 37: Programare Web - Arhitectura WWW

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

37

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07 http | reprezentari ale http | reprezentari ale

resurseiresursei• Codificarea setului de caractere (encoding):

ISO-8859-1 (implicit), ISO-8859-2,...• Tipul continutului resursei (MIME type) –

vezi urmatorul slide• Codificarea mesajelor (comprimare,

asigurarea identitatii si/sau integritatii): gzip, compress,...

• Formatul reprezentarii poate fi: text (HTML, text obisnuit, XML,...) sau binar

Page 38: Programare Web - Arhitectura WWW

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

38

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | cimpuri (atribute)http | cimpuri (atribute)• Content-Type

MIME (Multipurpose Internet Mail Extensions) Content-Type: tip/subtip

• Tipuri MIME principale– text defineste formatele text

(text/plain, text/html, text/xml, text/javascript)– image specifica formatele grafice

(image/png, image/jpeg)– application defineste aplicatiile client

(application/executable, application/javascript)– audio specifica formatele audio (audio/basic)– video specifica formatele video (video/mpeg)– multipart utilizat pentru trans. datelor compuse

Page 39: Programare Web - Arhitectura WWW

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

39

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | cimpuri (atribute)http | cimpuri (atribute)• Location

Location “:” “http://” host [ “:” port ] [ abs_path ]Location: http://www.infoiasi.ro:8080/s-a_mutat.html

Caracterele rezervate URI sint codificate – URI encoding: %hexa (e.g., “spatiul” devine “+” sau “%20” etc.)

• Location este folosit la redirectarea spre o alta reprezentare a resursei

Page 40: Programare Web - Arhitectura WWW

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

40

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | cimpuri (atribute)http | cimpuri (atribute)• Altele:

– Accept – specifica tipul/tipurile de reprezentare acceptate de client, plus calitatea

– Cache-Control – stabileste parametrii de control ai cache-ului (la nivel de proxy, uzual)

– Referer – desemneaza URI-ul resursei care a referit resursa curenta

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

– Authorization si WWW-Authenticate – utilizate la autentificarea accesului la o resursa protejata

Detalii: www.w3.org/Protocols/HTTP/

Page 41: Programare Web - Arhitectura WWW

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

41

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | stareahttp | 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

• 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 42: Programare Web - Arhitectura WWW

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

42

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | jurnalizarea cererilorhttp | jurnalizarea cererilordyn419.win.tue.nl – licenta [29/Sep/2006:11:08:04 +0300]

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

"GET /~busaco/teach/bsc2006 HTTP/1.1" 401 1283193.226.24.219 – – [29/Sep/2006:11:06:17 +0300]

"GET / HTTP/1.1" 403 103983.115.156.9 – – [29/Sep/2006:11:05:59 +0300]

"GET /~busaco/paint/days/trio.jpg HTTP/1.1" 304 –proxy.info.uaic.ro – – [29/Sep/2006:11:05:38 +0300]

"GET /favicon.ico HTTP/1.1" 404 1035rat.cluj.astral.ro – – [29/Sep/2006:11:04:27 +0300]

"GET /~linux/ HTTP/1.0" 200 4974triton.france3.fr – – [29/Sep/2006:11:04:27 +0300]

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

"GET /~acf HTTP/1.1" 301 327crawl.googlebot.com – – [29/Sep/2006:11:03:11 +0300]

"GET /~busaco/paint/works/Forms.jpg HTTP/1.1" 304 –

Page 43: Programare Web - Arhitectura WWW

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

43

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | exemplu cererehttp | 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

cimpuri

Page 44: Programare Web - Arhitectura WWW

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

44

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

http | exemplu raspunshttp | exemplu raspunsHTTP/1.1 302 FoundDate: Tue, 22 Aug 2006 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>

starea

cimpuri

continut

Page 45: Programare Web - Arhitectura WWW

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

45

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

privire de ansambluprivire de ansamblu• Arhitectura Web-ului

– Web-ul spatiu informational compus din elemente de interes, numite resurse, desemnate de identificatori globaliURI (Uniform Resource Identifiers)•Identificarea •Interactiunea•Reprezentarea prin formate de date

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

Page 46: Programare Web - Arhitectura WWW

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

46

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

privire de ansambluprivire de ansamblu

• Situri & aplicatii Web– Sit Web sistem pe care ruleaza un server

Web gazduind o serie de pagini (documente) WWW inrudite – ale unei organizatii, companii sau persoane•Ofera informatii unitare (scopuri comune)•Are asociata o adresa publica (vizibila),

bazata pe un domeniu Internet•Serverul Web poate gestiona simultan

mai multe situri gazduire virtuala•Poate fi disponibil in intranet sau extranet

Page 47: Programare Web - Arhitectura WWW

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

47

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

privire de ansambluprivire de ansamblu

• Situri & aplicatii Web– Aplicatie Web colectie interconectata de

pagini Web cu continut generat dinamic, menita a oferi utilizatorilor o functionalitate specifica•Interactiunea dintre aplicatie si

utilizatori are loc via o interfata Web

•Uzual, sit Web = aplicatie Web•Exemple: Amazon, Expedia, Flickr, GESCO, GMail,

Kartoo, PHPMyAdmin, webmin, Wikipedia etc.

Page 48: Programare Web - Arhitectura WWW

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

48

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

privire de ansambluprivire de ansamblu

• Situri & aplicatii Web– Arhitectura generala a unei aplicatii Web

Page 49: Programare Web - Arhitectura WWW

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

49

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

rezumatrezumat

• Internet:notiuni de baza & organizare

• Spatiul World-Wide Web: “definitii”, istorie, constituenti

• Adresarea resurselor Web: identificatori uniformi de resurse (URI)

• Protocolul HTTP (HyperText Transfer Protocol)

• Privire de ansamblu

Page 50: Programare Web - Arhitectura WWW

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

50

Teh

nolo

gii

Web

Teh

nolo

gii

Web

20

07

20

07

Intrebari…?


Recommended