World Wide Web (WWW) [606929]

Capitolul 4
World Wide Web (WWW)
Este un serviciu complex pentru accesul la documente, raspandit e pe calculatoare din intreaga
lume. In 5 ani a evoluat de la o aplicatie pentru transmiterea d atelor de cercetare in domeniul
fizicii, la o aplicatie pe care majoritatea oamenilor o confun da cu reteaua Internet. Are o inter-
fata usor de utilizat chiar de catre incepatori si ofera o canti tate imensa de informatii in orice
domeniu.
Permite:
•localizarea si accesarea informatiei de pe calculatoare aflate la distanta intr-un mod in-
teractiv
•afisare text, imagini
•transmisiuni audio si video in direct
•accesarea informatiilor de la mai multe servicii Internet fol osind un singur mecanism
4.1 Notiuni Web
Web (WWW sauW3) a aparut in 1989 la CERN ( CentreEuropean de Recherche Nucleaire)
in Elvetia. Tim Berners-Lee a inventat WWW ca mod de organizare a informatiei pentru a
pune la dispozitia cercetatorilor din intreaga lume informa tii din domeniul fizicii particulelor:
colectii de rapoarte, planuri, desene si fotografii aflate intr-o continua modificare.
Propunerea sa a fost facuta in martie 1989, iar primul prototip functional in mod text a aparut
18 luni mai tarziu. Prima interfata grafica a aparut in februar ie 1993, numita Mosaic.
In1994 CERN si MIT ( Massachusetts Institute of Technology) au semnat un acord pentru
a forma Consortiul World Wide Web , organizatie ce are ca obiectiv dezvoltarea web-ului,
standardizarea protocoalelor si incurajarea interoperabil itatii intre site-uri. Are aproximativ
7

8 CAPITOLUL 4. WORLD WIDE WEB (WWW)
450 organizatii membre (universitati si companii) din intrea ga lume.
Din punctul de vedere al utilizatorului consta dintr-o vasta c olectie de documente raspandite
in intreaga lume, numite pagini web. Fiecare pagina poate co ntine legaturi catre alte pagini, ce
se pot afla pe acelasi calculator ca si documentul de la care s-a facu t referirea, sau pe un calcu-
lator aflat oriunde in lume. Documentele care contin legaturi catre alte documente se numesc
hypertext . Paginile pot fi vizualizate cu ajutorul unui program de navi gare (browser ).
Acesta transfera pe calculatorul local pagina ceruta, interpr eteaza comenzile de formatare con-
tinute in document si afiseaza textul din acesta formatat corespun zator. Caracterele ce reprez-
inta referiri catre alte pagini se numesc hyper-legaturi (hyper-link) sau simplu link, acestea
fiind afisate in mod diferit fata de restul textului (subliniate si fo losind alte culori – modul
implicit) pentru a fi recunoscute de catre utilzator.
3 − hyperlink accesat1 − cerere pagina Server Web
Client Web
8080Internet2 − transferul paginii
Web
hyperlink catre
un alt server4 − transferul paginiicomunicare prin protocolul HTTP
Pagina 1
WebPaginiServer WebPagina 1
afisata
Figura 4.1: Functionare Web
In figura 4.1 este indicat modul de comunicare intre server si clie nt. Serverul de web este un
program care accepta conexiuni de la clienti (programele de navigare) pe portul 80. Dupa ce
clientul stabileste legatura cu serverul trimite cererea pent ru pagina web, si serverul va trimite

4.1. NOTIUNI WEB 9
inapoi raspunsul: fisierul respectiv sau un mesaj de eroare daca acel fisier nu se gaseste. Dupa
aceea conexiunea este inchisa de catre server. Daca se acceseaza u n nou link in pagina ceruta,
clientul stabileste din nou conexiunea la server si cere documen tul respectiv. Fiecare cerere
consta dintr-o comanda de genul: ”GET nume fisier”.
Protocolul folosit pentru transmiterea paginilor web este HTTP (HyperTextTransfer Protocol).
Este folosit in interactiunea dintre client si serverul de web.
In principiu un server de web de baza este un program destul de simp lu care preia cererile si
trimite inapoi raspunsul. La aceasta functie de baza insa se mai ad auga si alte functii cum ar fi
CGI sau posibilitatea de securizare a accesului. De exemplu se pot proteja anumite pagini, fiind
accesibile numai celor care au un nume de utilizator si parola. Un alt nivel de securitate este de
a realiza o conexiune criptata intre navigator si server prin c are se transmit date confidentiale
(cum ar fi numarul cartilor de credit, informatii despre contu ri bancare etc.).
Exista doua elemente cheie ce stau la baza functionarii WWW-lu i:
•paginile web sunt scrise in limbajul HTML care este un limbaj de ”ma rcare” a textu-
lui. Acestea sunt cuvinte cheie pe care le recunoaste navigatoru l si conform acestora
formateaza textul si il afiseaza utilizatorului
•fiecare pagina web are o adresa unica, numita URL.
Astfel cei doi factori – codarea HTML si URL-urile unice ofera Web- lui flexibilitate si usurinta
in utilizare:
•HTML permite ca intr-un fisier text simplu sa se includa liste, tabele , formulare, imagini
si legaturi la alte fisiere
•URL-ul permite referirea cu usurinta la o alta pagina Web. Astfel se pot face referiri la
alte informatii relevante legate de documentul respective, disponibile pe alte servere Web
din lume.
4.1.1 URL (U niform R esource L ocator)
Pentru a putea localiza o pagina Web este necesar un mecanism car e sa permita adresarea lor
-URL. Sunt necesare trei elemente pentru a localiza o pagina Web:
•adresa serverului web (numele de domeniu al serverului)
•unde este localizata pagina pe serverul de Web (numele fisierului , cu intreaga cale catre
acesta)
•protocolul prin care se acceseaza pagina.
Aceste trei elemente formeaza URL-ul, care identifica tipul docu mentului, locatia pe Internet
si numele fisierului.

10 CAPITOLUL 4. WORLD WIDE WEB (WWW)
Forma generala a unui URL este:
<protocol >://<nume.de.domeniu.server >/<calecatre pagina >/<nume pagina >.
Referinta la un director reprezinta de fapt si acela un fisier, de obiceiindex.html ,index.htm ,
index.php ,index.asp ,index.shtml .
4.1.2 HTML (H yperT ext M arkup L anguage)
Este limbajul folosit pentru scrierea paginilor Web, fiind un lim baj de marcare care descrie
browserului modul de formatare a textului din cadrul paginii .
Versiunea HTML 1.0 functiona intr-o singura directie: utiliza torul putea transfera pagini de
pe un server web, dar nu putea transmite informatii in sens inver s. Tot mai multe organizatii
comerciale si-au facut prezenta pe Web si a aparut necesitatea c omunicatiei in ambele directii
(de exemplu: preluare comenzi, la motoarele de cautare se int roduc cuvinte pe baza carora se
fac cautarile). Asemenea elemente au fost introduse incepand cu HTML 2.0. Dupa aceea a
aparut suport pentru tabele, formulare.
Versiunea actuala (noiembrie 2003) este 4.01. Mai multe infor matii gasiti la pagina consortiului
WEB: www.w3.org .
Paginile HTML folosesc limbajul CSS(Cascading StyleSheets) pentru a imbunatati designul
unei pagini. CSS ofera dezvoltatorilor paginilor web o unealta simpla si eficien ta pentru a
simplifica operatia de adminstrare/actualizare a unui site web, si ofera proprietati de design
sofisticate. CSS este recomandarea consortiului World Wide Web, a paruta in anul 1996. Un
style sheet este un set de proprietati pentru browser ce indica cum sa fie format ate diferitele
taguri ale unui document.
Exista 2 versiuni: CSS1 sau nivelul 1 si CSS2 sau nivelul 2. CSS2 ofera compatibilitate cu
CSS1 si are in plus multe optiuni noi.
Un style sheet CSS1 contine cinci tipuri de baza de informatii de prezentare, numite proprietati:
•Proprietati pentru culori si fundal.
•Proprietati pentru fonturi.
•Proprietati pentru text (spatierea intre cuvinte, intre lit ere, etc.)
•Proprietati pentru blocuri (marginea si intre elementele bl ocului, etc.).
•Clasificari (control asupra stilului listelor si formatarea eleme ntelor)
Problema principala in trecut a fost lipsa suportului pentru CS S in multe din browsere, astfel
incat pagina nu era afisata cum dorea designerul. In ultimii 2 ani majoritatea browserelor au
introdus suport si pentru CSS, cum ar fi Internet Explorer 5+, Net scape 6+, astfel CSS fiind
utilizat fara in paginile web.

4.1. NOTIUNI WEB 11
4.1.3 XML (eX tensible M arkup L anguage)
Este un meta limbaj ce permite utilizatorilor sa structureze si d efineasca informatiile continute
intr-un document. XML a fost dezvoltat pentru a descrie datele , si utilizeaza taguri, elemente
si atribute pentru a descrie intr-o maniera clara continutul u nui document. Nu are tag-uri pre-
definite, programatorul trebuie sa defineasca tag-urile , de aceea este numit limbaj extensibil.
XML nu este un inlocuitor pentru HTML, ci o extensie a acesteia. HTML este utilizat pentru a
formata documentul ce trebuie afisat, iar XML este folosit pentru a defini informatia din cadrul
documentului.
XML nu a fost dezvoltat pentru a ”face” ceva, exista doar pentru a structura, stoca si a trimite
datele. Mai jos aveti un exemplu XML:
<nota>
<to>Ion</to>
<from>Radu</from>
<heading >Reminder </heading >
<body>Nu uita sa-mi trimiti actele pana la week-end! </body>
</nota>
Exemplul de mai sus este doar informatie intre taguri XML. Trebu ie scris un soft pentru a
trimite, receptiona si afisa aceasta informatie.
Ca o definitie XML este o unealta independenta de hardware si software pentru trans –
miterea datelor . Cateva din avantajele XML:
•permite distribuirea unei parti importante a procesarii date lor de la server la client
•este un limbaj extensibil
•ofera informatii despre continutul documentului (tag-uril e, atributele si elementele ofera
informatie de context ce poate fi folosita pentru a interpreta sensul continutului , oferind
noi posibilitati de exemplu pentru motoare de cautare foarte eficiente).
•documentele XML contin diverse tipuri de date (audio, video, P DF, ActiveX, appleturi
Java)
4.1.4 Etapele transferarii unei pagini web
Continutul unei pagini web poate fi text, imagine, inregistra re audio sau video, transmisiuni
directe audio, video. Din momentul introducerii URL-ului un ei pagini pana la afisarea acesteia
etapele parcurse sunt:
1. navigatorul contacteaza serverul DNS local pentru a afla adresa IP pentru numele
de domeniu al destinatiei.

12 CAPITOLUL 4. WORLD WIDE WEB (WWW)
2. navigatorul primeste adresa IP si stabileste conexiunea cu serverul web de la acea
adresa pe portul 80, sau pe cel specificat in URL
3. clientul trimite comanda de cerere al fisierului HTML si daca aceasta adresa are si
cookie-uri pe hard-disk, il trimite si pe acesta odata cu cerere a.
4. serverul web transmite fisierul cerut si cookie-urile, daca exista
5. serverul inchide conexiunea dupa ce a transmis fisierul catre client. Pentru a transfera
o alta pagina de la acel server, clientul trebuie sa deschida o no ua conexiune catre server.
6. navigatorul afiseaza pagina formatata corespunzator pe baza tag-urilor HTML
Programele de navigare (Internet Explorer, Netscape, Opera, etc. ) afiseaza in bara de stare
a navigatorului majoritatea etapelor care se executa, astfel incat utilizatorul poate determina
daca problema este la serverul DNS, sau nu este buna adresa, sau momen tan nu este disponibil
serverul Web respectiv.
Pentru fiecare imagine care apare pe o pagina Web navigatorul st abileste o noua conexiune si
aduce acea imagine. Acest lucru se datoreaza faptului ca implem entarea protocolului http a
fost mai simplu astfel. Daca o pagina web contine multe imagini a tunci transferul acelei pagini
se efectueaza bineinteles mai lent.
4.2 Interactiune cu utilizatorul in paginile web
4.2.1 CGI (C ommon G ateway I nterface)
Etapele descrise mai inainte reprezinta modul de servire a unei pagini ”statice”. Sunt insa si
pagini dinamice, cum ar fi de exemplu cazul in care introducet i cuvintele pe pagina unui motor
de cautare si acesta va afiseaza rezultatul. Sau cand completati u n formular acesta trebuie
procesat de catre un program.
Toate acestea presupun ca odata primita cererea de la client ser verul de web sa transmita
aceasta cerere catre o aplicatie (program pe serverul de web) c are proceseaza datele primite
(datele unui formular, cerere de cautare etc.), si dupa rular e transmite datele rezultate inapoi
la server-ul de web, care le transmite la randul lui clientului care a facut cererea.
Metoda standard de a transmite o asemenea cerere de catre server c atre o aplicatie este CGI
(Common Gateway Interface). In acest caz exista deci un flux de date bidirectional intre
utilizator si server, ce permite:
•accesarea unei baze de date si a oferi rezultatul documentelor HTML
•generare de formulare HTML pentru introduceri de date
•interactiune cu documente on-line pentru a realiza cautari

4.2. INTERACTIUNE CU UTILIZATORUL IN PAGINILE WEB 13
Pentru a intelege cum functioneaza CGI-urile in urmatoarel e paragrafe se va face o scurta
descriere a functionarii serverelor web. Cererea trimisa de cl ient catre serverul web contine
mai multe elemente ce sunt numite campuri . Singurul camp care este necesar este campul
cerere , care este primul camp al unei cereri. Asa cum sugereaza si numele, acest camp este
suficient pentru a cere o pagina web de la un server (acest lucru insa nu inseamna ca serverul va
transmite URL-ul corespunzator, in formatul corepsunzator far a a avea informatia din restul
campurilor: inseamna doar ca serverul va raspunde la cerere).
Cand primeste o cerere, serverul efectueaza mai multe operati i inainte sa trimita inapoi clien-
tului URL-ul cerut:
•decide locatia URL-ului pe sistemul local de fisiere. Serverul tre buie sa ”rezolve” URL-ul
pe sistemul local de fisiere.
•decide daca URL-ul necesita autentificare pe baza de nume si parol a. Diverse locatii pe
sistemul de fisiere pot fi protejate prin diverse metode, incluzand necesitatea unui nume
utilizator si parola pentru a permite acces numai anumitor ut ilizatori.
•decide daca URL-ul necesita tratare speciala. In functie de loc atia URL-ului, extensia
fisierului si alti factori, serverul poate fi configurat sa efectueze o operatie speciala. Una
din aceste tratari speciale presupune rularea unei aplicatii e xterne de pe acelasi server –
un script CGI.
De exemplu liniile de mai jos specifica ca URL-ul ce incepe cu /cgi-bin/ (scipturi CGI )
va fi tratat ca un script executabil, si indica locul (directoru l) in care se afla acele scripturi.
De exemplu configuratia utilizatat pe un server web Apache:
# ScriptAlias: This controls which directories contain ser ver scripts.
# Format: ScriptAlias fakename realname
ScriptAlias /cgi-bin/ /usr/local/etc/httpd/cgi-bin/
•dupa efectuarea unor operatii speciale trimite URL-ul client ului. Serverul inchide conex-
iunea si serveste o alta cerere.
In cazul tratarilor speciale este posibil ca serverul sa citeasca si sa proceseze un document
inainte sa-l trimita clientului. Acest lucru se numeste server-sid e includes, desi termenul server
parsing este mai exact.
Un script CGI poate fi utilizat in doua moduri:
1. poate fi inclus in pagina web si atunci cand utilizatorul acc eseaza pagina scriptul CGI
va fi executat si rezultatul acestuia este inserat in pagina trimi sa inapoi utilizatorului.
Aceasta este metoda numita server parsing .
2. este apelat direct de catre utilizator prin specificarea nume lui scriptului in URL-ul trimis
la server.

14 CAPITOLUL 4. WORLD WIDE WEB (WWW)
Prima metoda este o versiune mai simpla a celei de-a doua metode, fara a necesita prea multe
operatii din partea serverului, de aceea se va descrie ce-a de-a doua metoda.
Atunci cand serverul web primeste de la client cererea, creaza variabile de mediu pe baza
mesajului de cerere. Pentru a transmite informatii scriptului CGI, serverul foloseste atat ar-
gumente in linia de comanda cat si variabile de mediu, ce este me toda principala utilizata de
CGI de a primi informatii.
din mesajul de cerereserverul creaza variabilele de mediu
programului CGICererea Variabila de mediuGET /cgi−bin/script HTTP/1.0
Host: vega.unitbv.romesajul de cerere de la client
valorile din mesajul de cerere devin disponibile/cgi−bin/script
HTTP/1.0
Host: vega.unitbv.roREQUEST_METHOD
SCRIPT_NAME
SERVER_PROTOCOL
HTTP_HOSTGET
Figura 4.2: Crearea variabilelor de mediu
Daca clientul apeleaza scriptul CGI cu parametrii, acestea sun t salvate in variabila de mediu
QUERY STRING . Deoarece majoritatea cererilor sunt procesate in browser pri n utilizarea
unui formular, sirul de cerere este automat creat de catre navi gator. Este posibila accesarea
scriptului CGI fara introducerea datelor de catre utilizato r, caz in care sirul de cerere trebuie
creat manual si atasat la sfarsitul URL-ului. Sirul de cerere pent ru un script CGI intotdeauna
incepe cu semnul ?:
http://vega.unitbv.ro/cgi-bin/script ?param , unde ( param este sirul de cerere).
Aceata este metoda de a transfera informatii serverului folosind metoda GET, care este metoda
implicita utilizata de navigatoare pentru accesarea URL-uri lor. Acesata are limitari serioase,
deoarece lungimea sirului de cerere poate fi de numai 1024 de ca ractere. Unele browsere se
blocheaza cand lungimea cererii depaseste limita, si multe serv ere nu accepta intregul sir daca
este prea lung. Pentru a transmite cantitati mai mari de date ser verului, se utilizeaza metoda
POST. O comunicare POST presupune ca clientul trimite urmato arele elemente serverului:

4.2. INTERACTIUNE CU UTILIZATORUL IN PAGINILE WEB 15
•un antet, mesajul de cerere, cu metoda POST
•trimite o linie goala, pentru a termina antetul
•datele, sau continutul, numita si entitate
Evident serverul rezolva cererea POST diferit fata de cerere a GET. Acestea sunt etapele sim-
plificate (figura 4.3):
•serverul citeste mesajul de cerere, vede ca este o cerere POST si sal veaza datele de la
client
•serverul creaza variabilele de mediu din toate elementele me sajului de cerere, ca si la
metoda GET. Unul din variabilele importante este CONTENT LENGHT , care este
lungimea in octeti a entitatii trimise (continut) de client.
•serverul gaseste metoda necesara pentru a trimite continutul la URL-ul cerut. In cele mai
multe cazuri URL-ul este un script CGI executabil, astfel incat se rverul trimite continutul
primit de la client la intrarea scriptului CGI. Similar, scrip tul scrie rezultatul la iesirea
standard sau un fisier, care este redirectat de server catre clientu l care a facut cererea.
•in final serverul inchide conexiunea
•clientul pregateste datele primite de la server pentru afisare, b azandu-se pe informatia
din antet. Daca de exemplu antetul specifica Content-type de tipul audio/basic ,
navigatorul il va trimite la aplicatia corespunzatoare pent ru a rula fisierul de sunet.
POST /cgi−bin/app HTTP1.0
Content−lenght 1111Client Web
procesate
pentru afisarede la clientServer Web Variabile de mediu
REQUEST_METHOD
CONTENT_LENGHT
etc.
Program CGI
(standard input)

procesarea

(standard output) continut catre client………
date de la client
………
antet raspunscontinutantet cerere
de la client
Figura 4.3: Tranzactia completa POST
Scripturile CGI sunt scrise in limbaje de programare ca C, C++, P erl, TCL sau Python.
In general aplicatiile CGI sunt scripturi pentru ca sunt mai usor de scris si depanat decat
programele compilate C sau C++.
Alternative la scripturile CGI sunt Active Server Pages (ASP) de l a Microsoft si PHP.

16 CAPITOLUL 4. WORLD WIDE WEB (WWW)
4.2.2 ASP (A ctive S erver P ages)
ASP este un limbaj scriptic, codul fiind inclus intr-o pagina HTML si care este procesat pe
un server web Microsoft inainte ca pagina sa fie trimisa la utilizat or. ASP-ul este similar cu
CGI-uri in sensul ca ambele implica programe ce ruleaza pe calculatorul pe care se afla
serverul de web, si care transmit rezultatul inapoi serverului w eb. In mod tipic script-ul de
pe server primeste ca intrare cererea de la utilizator de a acce sa datele dintr-o baza de date
si apoi le serveste in forma HTML serverului care il transmite navig atorului. Scripturile ASP
sunt create in VBScript (Visual Basic Scripting Edition) sau JScript (limbajul dezvoltat de
Microsoft, echivalentul limbajului Javascript dezvoltat de Netscape), incluzandu-le in pagina
HTML sau folosind instructiuni ActiveX Data Objects (ADO) in fisierul HTML.
Paginile ce contin ASP au extensia .asp
4.2.3 PHP
PHP este un limbaj scriptic distribuit gratuit. PHP, a carei initiale au originea de la Personal
HomePageTools, a devenit acronimul pentru: PHP:Hypertext Preprocessor. Este o varianta
alternativa pentru ASP pentru sistemele de operare Linux, dar c are poate rula si pe Windows.
Acest limbaj poate fi rulat de serverele web Apache (care are varia nta si pentru sistemul de
operare Windows) si mai nou si de IIS (Microsoft), deci practic li mbaul PHP este disponibil
ambelor sisteme de operare, pe cand ASP poate rula numai pe Windo ws.
Scriptul PHP este inclus in pagina web. Inainte ca pagina sa fie tra nsmisa utilizatorului serverul
web apeleaza interpretorul PHP pentru a efectua operatiile m entionate in scriptul PHP.
Paginile ce au inclus scripturi PHP au una din extensiile extensi a.php,.php3 sau.phtml .
4.2.4 JavaScript
JavaScript este un limbaj scriptic interpretat, orientat pe obiect, dezv oltat pentru web de
catre Netscape. Chiar daca numele sunt asemenatoare, nu are nici o legatura cu limbajul Java.
In timp a devenit mult mai popular decat Java in ceea ce privest e utilizarea pe web, pentru
ca Javascript este un limbaj puternic, usor de utilizat, rapid, si este cel mai favorit limbaj pe
web. Utilizarea originala si cea mai populara a Javascript-ulu i este schimbarea imaginilor cand
se pozitioneaza mouse-ul peste o imagine.
Secventa de cod JavaScript este inclusa in pagina HTML, si este exe cutata de catre browser in
momentul incarcarii paginii.
Dupa ce Javascript a inceput sa castige popularitate, Microsoft a creat versiunea proprie
de Javascript numita JScript , prima versiune aparand in iulie 1996 in Internet Explorer3. 0.
Aceasta era o versiune redusa a Javascript1.1 Din momentul respect iv exista atat Javascript
cat si Jscript, de unde vin si diferentele de interpretare a scrip turilor de catre navigatoare. In
acelasi timp Microsoft a lansat si propriul limbaj VBScript , care este insa mult mai putin
folosit decat JavaScript.

4.2. INTERACTIUNE CU UTILIZATORUL IN PAGINILE WEB 17
Pentru a aduce versiunea JScript la compatibilitate cu JavaS cript1.1, Microsoft a mai lansat o
noua versiune de JScript, insa unele scripturi rulau bine in Netsc ape si nu in Internet Explorer
si invers.
Netscape si Sun au apelat la o terta parte, la ECMA (European Comp uter Manufacturers As-
sociation – http://www.ecma.ch), pentru a standardiza limba jul JavaScript. Noul standard a
fost numit ECMAScript , deci in momentul de fata sunt trei standarde separate: JavaScr ipt,
JScript si ECMAScript.
Un lucru important de avut in vedere cand sa utilizeaza JavaScr ipt este compatibilitatea cu
navigatoarele. Cel care creaza pagina web trebuie sa se asigure ca versiunea limbajului pe care
utilizeaza este compatibila cu cat mai multe navigatoare.
Cateva exemple pentru care JavaScript este foarte popular si m ult utilizat:
•continut dinamic, cum ar fi un text ce ruleaza in fata utilizat orului
•HTML dinamic: manipulari de imagini, pozitionare elemente p e pagina
•validarea si preluarea datelor dintr-un formular
•client-side CGI, permite ca aplicatiile sa fie scrise in Javascript si astfel nu trebuie trimisa
cerere pentru procesare catre server.
4.2.5 Limbajul Java
Javaeste un limbaj de programare orientat pe obiecte dezvoltat de Sun Microsystems in anul
1995 pentru utilizarea in mediul distribuit heterogen al Int ernetului. Poate fi utilizat pentru a
crea aplicatii ce pot rula pe un singur calculator sau sa fie distrib uit printre mail multe servere
si clienti intr-o retea. De asemenea poate fi folosit pentru a scri e un modul mic de aplicatie sau
applet pentru a fi inclus intr-o pagina web. Appleturile permit inter actiunea utilizatorului cu
pagina.
Daca navigatorul gaseste un applet incorporat in codul HTML, ac esta este transferat pe calcu-
latorul utilizatorului si este executat local. Motivele util izarii appleturilor:
•interactivitate cu utilizatorul (de ex. jocuri)
•formulare complexe (de tip calcul)
•adaugare animatie si sunet la paginile web fara a utiliza progr ame de vizualizare externe.
4.2.6 Macromedia Flash
Flash de la firma Macromedia este instrumentul de animatie vectoriala folosit pe web. Ofera
posibilitatea crearii unor animatii de foarte buna calitate , scalabilitate, iar marimea este sufi-
cient de mica pentru a putea fi incarcata chiar si la viteze mai l ente.

18 CAPITOLUL 4. WORLD WIDE WEB (WWW)
Exista doua tipuri de imagini utilizate pe web:
•imaginile raster constau din mici patratele (pixeli) de diverse culori. Calita tea imaginii
depinde de rezolutie si imaginile par ”sterse” cand se maresc. Cel mai bine sunt utilizate
la fotografii si la imagini create in programe de manipulare a im aginilor ca Photoshop,
Paint Shop Pro, CorelDraw.
•imaginile vectoriale constau din linii si curbe (numite vectori) descrise de ecuatii m atem-
atice. Astfel aceste imagini sunt independente de rezolutie si po t fi scalate si se pot muta,
li se poate schimba culoarea usor fara a pierde din detalii, si vor fi afisate corect. De aceea
sunt foarte utile in animatii.
4.3 Portal
Portal este termenul folosit pentru un site web care este sau isi propune sa fie un punct de
pornire principal pentru utilizatori cand acestia se conecte aza la web, sau pe care utilizatorii il
viziteaza ca pe un site de ”baza”.
In general serviciile oferite de un portal sunt:
•categorii de site-uri web, pe diverse domenii de interes
•posibilitatea de a face cautari pentru diverse informatii
•stiri, prognoza meteo
•informatii despre tranzactii de actiuni
•cautari de harti si numere telefon, forumuri etc
Un fapt interesant este aparitia primelor portaluri ce permit u tilizatorilor sa-si individualizeze
dupa preferinte interfata portalului cum ar fi culoarea fund alului, modul de aranjare a infor-
matiilor pe site.
Exista portaluri generale cum ar fi Yahoo, Netscape, Microsoft Net work, AOL, si portaluri
pentru un anumit domeniu, de exemplu pentru investitori, adm inistratori de retea (SearchNet-
working.com) etc.
Multi provideri ofera portaluri pentru utilizatorii sai, ma joritatea adoptand stilul de la Yahoo,
site cu multe categorii usor de utilizat, in mare parte in mod te xt ce permite incarcare rapida
pe care utilizatorii sa-l foloseasca cu usurinta si la care se intor c cu placere. Companiile cu
portaluri au atras mereu investitorii de pe piata actiunilor , pentru ca aceste site-uri au foarte
multi vizitatori astfel castigand o audienta mare.
Cateva pagini romanesti, care au fost create pentru a fi portalu ri:www.kappa.ro ,www.la-
start.ro ,www.rol.ro ,www.d-toate.net/portal ,www.acasa.ro ,www.apropo.ro

4.4. MOTOARE DE CAUTARE 19
4.4 Motoare de cautare
Pe web exista o mare varietate de informatie in diverse domenii pe milioane de site-uri. Prob-
lema este de a gasi informatia care il intereseaza pe utilizator , caz in care se apeleaza la un
motor de cautare (search engine) . Acestea sunt site-uri speciale ce permit utilizatorilor sa
gaseasca informatii de pe alte site-uri, pe baza unor cuvinete d e cautare.
Modul de realizarea a acestora difera, dar in principiu reali zeaza aceleasi functii:
•cauta informatii pe Internet
•mentin un index al cuvintelor gasite, si unde anume au fost gasite
•permit utilizatorilor sa caute cuvinte sau combinatii de cuvi nte in acest index
Astazi un motor de cautare se refera la cautarea informatiei pe w eb, insa inainte ca web-ul sa
devina un serviciu atat de popular existau alte servicii de caut are a informatiei pe Internet,
cum ar fi gopher, archie, veronica etc.
La primele motoare de cautare indexul era format din cateva su te de mii de pagini, si primeau
cateva mii de cereri pe zi. In ziua de azi un motor de cautare co ntine in index sute de mil-
ioane de pagini si raspund la zeci de milioane cereri pe zi .
Pentru a gasi informatie pe sutele de milioane de site-uri, moto arele de cautare folosesc pro-
grame speciale numite paianjeni (spiders) penru a crea liste de cuvinte gasite pe web.
Procesul de creare a acestor liste se numeste web crawling . Cautarea incepe la serverele cele
mai utilizate si populare. Spider-ul incepe indexarea cuvin telor gasite pe un site popular si
continua la toate link-urile gasite pe pagina respectiva. Pri n acest sistem cautarea incepe sa se
extinda pe partea cea mai utilizata a web-ului (figura 4.4).
De exemplu Google a fost creat ca un motor de cautare academic, si fondatorii lui a u de-
scris modul de functionare al sistemului, pentru a arata cat de e ficient este acesta. Sistemul
avea mai multi paianjeni simultani, in general 3, fiecare din el e avand deschise simultan 300
de conexiuni la pagini web. La performanta maxima, cu 4 paian jeni, sistemul era capabil sa
parcurga peste 100 de pagini pe secunda generand aproximativ 600kiloocteti de date pe se-
cunda. La vizitarea unei pagini paianjenul nota 2 informati i:cuvintele din cadrul paginii si
unde au fost gasite cuvintele. Paianjenul nota toate cuvintele semnificative de p e o pagina,
ignorand articolele a (o), an (un) etc.
Alte spidere folosesc alte metode, in incercarea de a face sistemul cat mai rapid sau a oferi
utilizatorilor o cautarea mai eficienta. De exemplu spider-ul de peLycos retine cuvintele din
titluri, paragrafe si link-uri, impreuna cu cele mai folosite 100 de cuvinte si fiecare cuvant din
primele 20 de linii ale textului. Altavista indexeaza toate cuvintele de pe o pagina, inclusiv
articolele ca a,an,thesi alte cuvinte ”nesemnificative”.
Tag-urile META din limbajul HTML permit celui care creaza pagina web sa specifice cuvintele
pe baza carora sa fie indexata pagina respectiva. Exista si situatii cand se introduc cuvinte care

20 CAPITOLUL 4. WORLD WIDE WEB (WWW)
Spider
Build index based on
importance algorithmfounded wordsCreate the list of
sports
flowers
computers
Europe
cars
subtitles
GSM
hacking
LinuxURL 2URL 1
URL 3
URL 5
URL 4
URL 5
URL 6
URL 7
URL 8
Compress dataStored the date
into database
Figura 4.4: Modul de functionare a motorului de cautare
sa permita gasirea paginii pentru subiecte foarte populare, fa ra ca pagina sa contina ceva legat
de subiectul respectiv. Pentru a elimina acest lucru paianjeni i coreleaza cuvintele din tag-ul
meta cu continutul paginii, rejectand cuvintele ce sunt in ME TA tag, dar nu apar pe pagina.
Exista situatii cand detinatorul paginii nu doreste sa apara pe si te-urile de cautare sau nu
doreste ca activitatea spider-ului sa acceseze pagina. Pentru a ceasta a fost dezvoltat protocolul
de excludere a robotului (spider rejection protocol). Daca acesta este indicat la incep utul
tag-ului META, care se afla la inceputul paginii HTML, spider-ul nu va indexa cuvintele de pe
pagina si nici nu va urma link-urile de pe aceasta.
Dupa terminarea cautarii informatiei pe web (datorita modi ficarii constante a web-ului spiderele
cauta in continuu informatie) serverul de cautare trebuie sa o rganizeze informatia astfel incat
sa fie utila.
Exista doua componente ce fac datele cautate accesibile utili zatorilor:
•informatia in sine
•metoda prin care este indexata informatia
In cel mai simplu caz se poate stoca cuvantul gasit si URL-ul unde a fo st gasit. In acest fel nu
s-ar putea specifica daca cuvantul a fost folosit in sens important sa u nerelevant, daca cuvantul
a fost utilizat o singura data sau de mai multe ori, daca pagina co ntinea link-uri catre alte
pagini ce contin acel cuvant. In acest fel nu s-ar putea specifica importanta rezultatului ,

4.5. COOKIES 21
daca una este mai semnificativa decat cealalta.
Astfel motorul de cautare memoreaza mai multa informatie, nu n umai cuvantul gasit. Poate
memora de cate ori apare cuvantul pe pagina. Cuvantului i se aso ciaza importanta, aceasta
incrementandu-se daca apare in prima parte a documentului,i n paragrafe, in link-uri, in titlul
paginii sau in tag-ul META. Fiecare motor de cautare are o alta m etoda de atribuire a impor-
tantei, din aceasta cauza la diferite servere de cautare acela si cuvant poate produce rezultate
diferite.
Pentru a minimiza spatiul alocat de aceasta informatie, toate datele se codifica. De exemplu
la Google s-au utilizat 2 octeti pentru stocarea informatiei, importanta ocupand 2 sau 3 biti.
Dupa compactarea informatiei acesta poate fi indexata, rolul acesteia fiind ca sa fie gasita cat
mai repede posibil. Exista mai multe metode pentru a realiza ac est lucru, cea mai folosita fiind
atasarea unei valori numerice fiecarui cuvant ( hash table ).Functia de dispersie (hashing)
permite distribuirea in mod egal a intrarilor pe un numar pred eterminat de diviziuni (sectiuni).
Tabela contine numarul si un indicator (pointer) la data respe ctiva. Datorita acestei indexari
eficiente, se pot obtine rezultate rapide chiar la o cautare mai complexa ce consta din mai multe
cuvinte.
Cautarea facuta de utilizator poate fi introducerea unui simp lu cuvant, sau mai complexa in
care se utilizeaza mai multe cuvinte si operatori booleani (AND sa u +, OR, NOT sau -, ””)
pentru a restrange cautarea.
Cautarea realizata cu operatori booleani este o cautare lite rala, adica motorul cauta exact
cuvintele sau fraza introdusa. Aceasta poate fi o problema daca cu vantul are mai multe inte-
lesuri. Se pot elimina cele care nu sunt de interes, dar ar fi si mai si mplu daca serverul ar putea
efectua aceasta operatie. Una din directiile de dezvoltarea a motoarelor de cautare este cea de
cautare pe baza de concept. Aceasta implica utilizarea unei an alize statistice pe paginile ce
contin cuvintele cautate de utilizator, pentru a gasi si alte p agini ce pot fi de interes. Bineinteles
informatia stocata este mai mare in acest caz si procesarea in cazu l unei cautari necesita mai
mult timp.
Alta directie este dezvoltarea motoarelor de cautare bazate p e intrebari in limbaj ”natural” .
In acest caz utilizatorul introduce o intrebare exact ca si cum l-ar adresa unei persoane. Un
asemenea server de cautare este askjeeves.com , care cauta cuvinte cheie in intrebare si le
aplica indexului pe care il are.
4.5 Cookies
Ofera posibilitatea utilizatorilor de a naviga mai usor pe web . Cei care creaza pagini web le
utilizeaza ca sa ofere utilizatorilor o navigare mai usoara si sa aiba o informatie clara despre
vizitatorii unui site. Cookie este un sir de text pe care serverul Web il scrie pe hard-diskul
utilizatorului. Permit serverului Web sa stocheze informatie pe calculatorul utilizatorului pe
care sa-l citeasca ori de cate ori utilizatorul se conecteaza la site-ul respectiv. Informatia este

22 CAPITOLUL 4. WORLD WIDE WEB (WWW)
stocata sub forma unei perechi de nume-valoare . De exemplu un site Web poate genera
un identificator (ID) unic pentru fiecare vizitator si sa memoreze acest numar pe calculatorul
utilizatorului in fisierul cookie. Practic acesta este un fisier tex t care contine valorile salvate
de fiecare site, in general acesta fiind un ID unic pentru acel utili zator. Serverul Web poate
ulterior sa citeasca aceasta valoare, si poate citi numai aceasta valoare nu si alte valori scrise
de alte servere Web. Pe sistemele Windows aceste date se inscriu ori in fisierul cookies.txt
sau pentru fiecare cookie exista un fisier separat intr-un subdirecto rCookies (Windows NT).
Functionarea sistemului este astfel:
•la introducerea unui URL in browser acesta trimite cererea de pa gina web la adresa
respectiva
•cand browserul trimite cererea verifica pe hard-disk in fisierul co okie daca are informatii
legate de site-ul respectiv si daca da atunci trimite si perechea nume-valoare odata cu
URL-ul
•serverul Web primeste cererea pentru pagina impreuna cu cooki e-ul, si citeste informatia
stocata in baza de date la ID-ul primit prin cookie.
•daca nu se primeste perechea nume-valoare, atunci serverul stie ca utilizatorul respectiv
nu a vizitat pagina web, Serverul creaza un nou ID in baza de da te si trimite inapoi
perechea nume-valoare in header-ul paginii pe care il transm ite. Calculatorul memoreaza
aceasta informatie pe hard-disk.
•serverul Web poate schimba perechea nume-valoare sau sa mai adau ge valori ori de cate
ori se viziteaza site-ul
Browser-ul poate fi setat sa accepte sau nu cookies-uri.
Utilitatea cookie-urilor:
•serverele pot determina pe baza acestei informatii cati utilizatori viziteaza site-ul .
Astfel pot afla cati utilizatori acceseaza site-ul, cati sunt noi si c ei care revin si cat de des
revine un utilizator. Acest lucru este realizat prinintermedi ul unei baze de date. Cand
un utilizator viziteaza site-ul pentru prima oara i se creaza u n ID in baza de date si
i se trimite acesta prin cookie. Data viitoare cand utilizator ul acceseaza site-ul, se va
incrementa contorul asociat cu acel ID si se va sti de cate ori a viz itat acel utilizator
pagina web
•site-urile pot stoca preferintele utilizatorilor astfel incat site-ul sa arate diferit pentru
fiecare utilizator. Unele site-uri ofera posibilitatea schimbar ii continut/dispunere/culoare.
Permite introducerea introducerea codului postal pentru a p rimi prognoza meteo pentru
zona respectiva
•site-urile e-commerce pot implementa cosurile de cumparaturi in care un utilizator
poate selecta ce doreste sa cumpere si oricand poate ”iesi din maga zin” pentru ca s-au

4.5. COOKIES 23
memorat articolele selectate. Toate informatiile sunt stocat e in baza de date a site-ului
cu ID-ul vizitatorului, si ID-ul este trimis ca cookie pe calcu latorul utilizatorului. La
urmatoarea vizita pe baza ID-ului site-ul va sti ce anume a selec tat un anumit utilizator
In toate exemplele de mai sus baza de date stocheaza lucruri sele ctate de utilizator, pagini
vizitate, informatii date in formulare etc. Toate aceste inf ormatii sunt stocate in baza de date
a site-ului, si tot ce este stocat pe calculatorul utilizatorulu i este un cookie ce contine ID-ul.
Probleme cu cookies:
•mai multi utilizatori lucreaza de la acelasi calculator (sali de calculatoare, Internet Cafe)
•stergerea cookies-urilor de pe calculator
•utilizatorii pot lucra de la mai multe calculatoare (de acasa , de la servici)
Discutiile pe tema cookies-urile au provocat controverse in ma ss-media din urmatoarele motive:
•site-ul web poate urmari nu numai articolele pe care le cumpar a utilizatorul ci si paginile
pe care le citeste, reclamele pe care le viziteaza. In momentu l cumpararii utilizatorul
introduce date personale cum ar fi numele, adresa etc. Astfel site- ul are foarte multe
informatii despre utilizator. In functie de politica site-ul ui (privacy policy) care difera
de la site la site, acesta poate sa transmita informatiile la o a tre ia parte care va trimite
reclame prin mail, utilizatorul primind in casuta postala mai luri pe care nu le-a cerut si
nu le doreste (junk mail).
•exista site-uri care pot crea cookie-uri pentru clientii lor p e calculatorul utilizatorului,
care apoi pot aduna informatii despre ce site-uri viziteaza ut ilizatorul, ce preferinte are si
astfel sa-i trimita reclame legate de interesele lui. Un asemenea serviciu este DoubleClick,
serviciile lor fiind folosite de foarte multe site-uri, care pe pa gina lor principala pun o cerere
de cookie catre DoubleClick. Pe baza acestui cookie Doublecl ick poate urmari utilizatorul
pe mai multe site-uri, ce cautari face pe motoarele de cautare . Cand utilizatorul acceseaza
un asemenea site, serverul va cere cookie-ul, dupa care trimite ID-ul la Doubleclick cerand
toata informatia marketing despre utilizator. Pe baza acesto r informatii utilizatorului ii
apar pe pagina reclame legate de interesele lui.
Ingrijorarea este legata de faptul ca aceasta culegere de info rmatii se intampla transparent
fara stirea si acordul utilizatorului.

Similar Posts