Transcript Slide 1

WEB

World Wide Web (ili samo Web) - kolekcija ogromnog broja
elektronskih dokumenata sačinjenih od povezanih Web
stranica napisanih u HTML-u.
Sajt B
Sajt A
Sajt C
Sajt F
Sajt G
Sajt E
Internet i Web tehnologije
Sajt D
Hipertekst

Koncept stranice koja sadrži pokazivače na druge
srodne stranice.
Računar je digitalna
elektronska mašina koju
čine CPU, upravljačka
jedinica i memorija.
Memorija sa
prizvoljnim
pristupom
Obavlja
matematička i
logička
izračunavanja
Deo računara koji
upravlja protokom
podataka
Može biti RAM ili
ROM. Koristi se
za čuvanje
informacija
Internet i Web tehnologije
Memorija koja
može samo da se
čita
Web na Internetu

Dve komponente:

Web pretraživač (browser) - klijent



Aplikacioni program za pribavljanje i prikazivanje
stranica.
Najpoznatiji pretraživači: Internet Explorer i Natscape
Navigator
Web server

Čuva i isporučuje Web stranice
Internet i Web tehnologije
Web na Internetu
Trenutno prikazana
stranica u
pretraživaču
Ljk kjls fsf
Dfsaf f adf
Fafadf fadfaf
Server
xyzw.com
Server
abcd.com
Klijent
Hiperlink na
abcd.com
Sde f
Dfsaf
f adf
Fafad
Disk
Hiperlink na
xyzw.com
kjls fsf
Dfsaf
f adf
Fafad
Disk
TCP konekcija
Web
pretraživač
Web server
INTERNET
Internet i Web tehnologije
Web server
Web pretraživač



Program koji može da prikazuje Web stranice i
reaguje kada se mišem klikne neki objekat na
stranici.
Kada je objekat izabran, pretraživač prati hipervezu
pridružen objektu i pribavlja izabranu stranicu.
URL - način imenovanja Web stranica




Npr. http://www.abcd.com/products.html
http - ime protokola
www.abcd.com - simboličko (DNS) ime računara kome se
pristupa
/products.html - ime datoteke koja sadrži stranicu
Internet i Web tehnologije
Web pretraživač
1.
2.
3.
4.
5.
6.
7.
8.
Pretraživač se obraća DNS serveru tražeći od njega IP adresu
hosta www.elfak.ni.ac.yu.
DNS server odgovara sa 160.99.1.1
Pretraživač uspostavlja TCP konekciju sa hostom 160.99.1.1
na portu 80.
Preko otvorene TCP konekcije, pretraživač šalje zahtev
tražeći fajl /home/index.html.
Server www.elfak.ni.ac.yu odgovara slanjem fajla
/home/index.html.
TCP konekcija se zatvara.
Pretraživač prikazuje tekst sadržan u falju /home/index.html.
i Web tehnologije
Pretraživač pribavlja i Internet
prikazuje
sve slike iz ovog fajla.
Web pretraživač


HTML - jezik za pisanje Web stranica
Web pretraživač - HTML interpretator
+

Dodatne funkcije koje olakšavaju navigaciju na Web-u:






Dugme za povratak na prethodnu stranicu,
Dugme za prelazak na sledeću stranicu i
Dugme za direktno učitavanje stranice koju je korisnik označio kao
svoju početnu stranicu.
Podrška za bookmark-e, tj. kreiranje liste često posećivanih stranica.
Učitane stranice se mogu štampati ili snimiti na hard disk.
Opcije za podešavanje izgleda stranice.
Internet i Web tehnologije
Pomoćne aplikacije i plug-in-ovi

Web stranice osim HTML mogu sadržati:







Dokumente u PDF formatu
Fotografije u JPEG formatu
Muziku u MP3 formatu
Video u MPEG formatu
... bilo koji sadržaj u jednom od stotina različitih tipova
fajlova i formata
Pretraživač mora biti u stanju da prepozna i pravilno
interpretira sve ove formate.
Kako ?
Internet i Web tehnologije
Pomoćne aplikacije i plug-in-ovi




Web server, zajedno sa stranicom, šalje i dodatne informacije
o stranici, kao što je MIME tip stranice.
Stranice tipa text/html se prikazuju direktno u pretraživaču, a
to važi i za još nekoliko drugih ugrađenih tipova.
Za tipove koje ne podržava direktno, pretraživač konsultuje
svoju tabelu MIME tipova u kojoj su MIME tipovima
pridruženi odgovarajući programu za prikazivanje.
Programi za prikazivanje (interperetaciju) spedifičnih
formata, mogu biti:


Plug-in-ovi (dodaci programu)
Pomoćne (helper) aplikacije
Internet i Web tehnologije
Plug-in




Programski moduli, koji se čuvaju u posebnom direktorijumu
na hard disku, i koje, po potrebi, pretraživač instalira kao
svoje sopstveno proširenje
Plug-in nije program za sebe, već se izvršava kao deo
pretraživača i na taj način ima pravo pristupa tekućoj stranici
i može je procesirati
Nakon što je plug-in obavio svoj zadatak, on se odstranjuje iz
memorije pretraživača.
Pre korišćenja plug-in mora biti instaliran u sistem



Plug-in se preuzima (download) sa svog Web sajta
Kopira u direktorijum za plug-in-ove i
Registruje u sistem (MIME tip kojeg plug-in obrađuje se upisuje u
tabelu MIME tipova)
Internet i Web tehnologije
Plug-in



Svi plug-in-ovi, predviđeni za određeni pretraživač moraju posedovati
identičan interfejs (skup procedura koje pretraživač može da poziva). Na
taj način,
pretraživač koristi sve plug-in-ove na identičan način.
Pojava novog tipa fajla (tj. formata) zahteva kreiranje odgovarajućeg
plug-in-a, ali ne zahteva bilo kakvu izmenu u pretraživaču
Klijetski računar
Pretraživač
Pretraživa
Pretraživač se izvršava
kao jedan proces
Interfejs pretraživača
(koristi ga plug-in)
Program
Pretraživača
Interfejs plug-in-a
(koristi ga pretraživač)
plug-in
Internet i Web tehnologije
Proces 1
Pomoćne aplikacije

Kompletni programi koji se izvršavaju nezavisno od
pretraživača





Adobe Acrobat Reader, Microsoft Word, ...
Komunikacija pretraživač - pomoćna aplikacija:
Ne koristi interfejs, već
Pomoćnoj aplikaciji se prosleđuje ime fajla koji treba obraditi
Pomoćna aplikacija otvara naznačeni fajl i prikazuje njegov
sadržaj.
Klijetski računar
Klijetski računar
Pretraživač
Pretraživač
Pomoćna aplikacija
Pretraživač se izvršava
kao jedan proces
Program
retraživača
plug-in
Proces 1
Internet i Web tehnologije
Proces 2
Pomoćne aplikacije

Koriste MIME tip application




application/pdf za PDF fajlove ili
application/msword za Word fajlove.
U Windows sistemu, program koji se instalira na
računar ujedno i registruje MIME tipove koje želi da
obrađuje.
Koflikt kada u sistemu postoji više prikazivača za
isti MIME podtip (npr. video/mpg).

Poslednji program koji je registrovan prepisuje postojeću
asocijaciju ˝MIME tip - pomoćna aplikacija˝ i dati MIME
tip/podtip vezuje za sebe.
Internet i Web tehnologije
Otvaranje lokalnih fajlova



Pretraživači mogu otvarati i lokalne fajlove
(sa hard diska).
Lokalnim fajlovima nisu pridruženi MIME
tipovi. Kako pretraživač zna koji plug-in ili
pomoćnu aplikaciju da pokrene ?
Na osnovu ekstezije u imenu fajla. (npr. za
nesto.doc se otvara Word)
Internet i Web tehnologije
Problem sigurnosti



Preuzeti fajlovi sa nastavkom .exe se ne
obrađuju plug-in-om ili pomoćnom
aplikacijom veće se direktno izvršavaju
.exe može biti virus !
Pretraživač može biti podešen da ne startuje
automatski nepoznate programe ili da
konsultuje korisnika pre nego što pokrene
preuzeti program
Internet i Web tehnologije
Web server

Web server - program koji neprekidno, u
petlji, obavlja sledeći niz aktivnosti:






Prihvata TCP konekciju od klijenta
(pretraživača).
Preuzima ime zahtevanog fajla.
Pronalazi fajl (na svom hard disku).
Šalje fajl klijentu.
Zatvara TCP konekciju.
Plus brojne dodatne mogućnosti
Internet i Web tehnologije
Web server


Performanse - svaki zahtev upućen od strane
klijenta, podrazumeva pristup hard disku radi
uzimanja traženog fajla.
Broj opsluženih zahteva zavisi od vremena
pristupa hard disku.


Npr. za vreme pristupa hard disku od 5 ms,
najviše 200 zahteva/s
Isuviše malo za Web sajtove sa velikim brojem
pristupa !
Internet i Web tehnologije
Web server


Kako obraditi veći broj zahteva u sekundi ?
Prvo rešenje - keš:


U operativnoj memoriji servera kreira se keš sa n
najskorije zahtevanih fajlova.
Ako je traženi fajl u kešu, tada nije potrebno
pristupati hard disku jer se fajl može uzet
direktno iz memorije.
Internet i Web tehnologije
Web server - multithreading server



Multithreading (rad sa više niti u isto vreme)
Pristupni modul prihvata dolazne zahteve i prosleđuje ga jednom od k
pozadinskih modula (svaki modul jedna nit)
Dok su jedan ili više pozadinskih modula blokirani čekajući na završetak
operacije čitanja fajla sa diska (i zbog toga ne troše CPU vreme), ostali
moduli mogu biti aktivno upošljeni na obradi novih zahteva
Web server


Ima smisla ako u sistemu
postoji više od jednog hard Pozadinski
modul (nit)
diska
Propusna moć multithread
Web severa sa k pozadinskih
modula u sistemu sa k diskova,
može biti k puta veća u odnosu
na single-thread server i jedan
Internet i Web tehnologije
disk
Keš
Pristupni
modul
Zahtev
Odgovor
Web server - multithreading server

U zavisnosti od tipa pristiglog zahteva, pozadinski modul
obavlja neki podskup sledećeg niza aktivnosti:









Određivanje imena zahtevane Web stranice iz URL-a.
Provera autentičnosti klijenta
Provera prava pristupa klijenta.
Provera prava pristupa Web stranici.
Provera keša.
Pribavljanje zahtevane stranice sa diska.
Određivanje MIME tipa koji će biti sadržan u odgovoru koji se vraća
klijentu.
Slanje odgovora klijentu.
Kreiranje zapisa u log fajlu.
Internet i Web tehnologije
Web server - farma servera





Za Web sajtove sa veoma velikom brojem pristupa u sekundi.
Više čvorova (računara) sa više hard diskova
Svi čvorovi poseduju sve Web stranice
Pristupni modul raspodeljuje zahteve rezličitim čvorovima
Ne postoji zajednički keš


traženi fajl prisutan u kešu nekog čvora, a da zahtev je prosleđen čvoru kod
kojeg se fajl mora pročitati sa diska. Zato
pristupni modul vodi evidenciju o tome kome je poslao svaki zahtev, a
naredne zahteve koji odnose na istu stranicu šalje istom čvoru
Ruter
Čvor (računar)
(CPU + keš + k diskova)
LAN
Pristupni
Internetmodul
i Web tehnologije
URL


URL-u (Uniform Resource Locator - uniformni lokator
resursa) - mehanizma za imenovanje i lako lociranje stranica
Daje odgovor na pitanja:
1.
2.
3.


Koje je ime stranice?
Gde se stranica nalazi?
Kako se stranici može pristupiti?
Svaka stranica na Web-u poseduje URL, kao svoje svetski
jedinstveno ime
Sastoji se iz tri dela:
1.
2.
3.
Protokol (ili šema) - kao se stranici pristupa;
DNS ime računara na kome je stranica locirana i
Lokalno ime fajla u kojem je stranica zapamćena
Internet i Web tehnologije
URL
http://es.elfak.ni.ac.yu/iw/iw.htm
Protokol

Ime fajla: relativna putanja
+ ime samog fajla
Deo za ime fajla može biti izostavljen:



Host
http://es.elfak.ni.ac.yu
Web server se preusmerava na glavnu stranicu Web sajta
Deo za ime fajla može da sadrži putanju do direktorijuma, ali ne i
samo ime fajla


http://es.elfak.ni.ac.yu/iw/
Web server se preusmerava na podrazumevani fajl u tom direktorijumu

http://es.elfak.ni.ac.yu/iw/index.html
Internet i Web tehnologije
URL

Deo za protokol - sadrži ime aplikacionog protokola koji se
koristi za pristup stranici. Nije ograničen samo na http
Ime
Koristi se za
Primer
http
Hipertekst (HTML)
http://es.elfak.ni.ac.yu
ftp
FTP
ftp://ftp.elfak.ni.ac.yu
file
Lokalni fajl
file:// C:\Courses\IWT\uwt.doc
news
Newsgroup
news:comp.os.minix
gopher
Gopher
gopher://gopher.tc.umn.edu/11/Libraries
mailto
slanje elektronske pošte
mailto:[email protected]
telnet
Udaljeni login
telnet://www.w3.org:80
Internet i Web tehnologije
Cookie

Web ne koristi koncept stanja. (Kaže se da je Web
stateless (bez stanja) ili bez memorije). Kod Web-a
ne postoji sesija:


Pretraživač šalje zahtev, a server vraća nazad fajl. Nakon
obavljene transakcije, server ˝zaboravlja˝ da je ikada
komunicirao sa tim konkretnim klijentom.
Nedovoljno za nove primene



Kako će Web server znati da li zahtev potiče od
registrovanog ili neregistrovanog korisnika ?
Web portali (npr. Yahoo) kod kojih svaki korisnik može
da konfiguriše sadržaj početne stranice birajući
informacije koje će biti prikazane uvek kada učita stranicu
...
Internet i Web tehnologije
Cookie

Da li je dovoljno da sever vodi evidenciju od IP
adresama sa kojih se upućuju zahtevi ?

Ne



IP adrese identifikuje računara, ali ne i korisnika koji trenutno
radi na računaru.
Mnogi korisnici koriste dinamičke IP adrese
Rešenje: cookie


Mali (najviše 4KB) fajl (ili string) kojeg server dostavlja
klijentu zajedno sa traženom stranicom
Kada se neredni put obraća serveru, kijent zajedno sa
zahtevom šalje i cookie
Internet i Web tehnologije
Cookie

Sadrži do pet polja:






(Domain, Path, Content, Expires, Secure)
Domain - domen iz kojeg cookie potiče (domen servera)
Path - (putanja) sadrži putanju u strukturi direktorijuma
servera koja ukazuje na deo njegovog stabla direktorijuma
unutar kojeg sve stranice mogu koristiti cookie.
Content (sadržaj) oblika ime = vrednost. Ime i vrednost mogu
biti bilo koja informacija koju server želi da uvrsti u cookie.
Expires sadrži datum i vreme kada prestaje važnost cookie-ja.
Ako ovo polje ne postoji, pretraživač uništava cookie
prilikom svog zatvaranja (neperzistentni cookie).
Secure, ako je postavljeno na Yes, nalaže pretraživaču da
cookie može da vrati serveru samo u šifrovanom obliku
Internet i Web tehnologije
Cookie

Kako se koristi:


Pretraživač, pre nego što pošalje zahtev za nekom
stranicom, proverava da li u svom direktorijumu,
predviđenom za cookie-je postoji cookie ranije
poslat iz domena kome će zahtev biti upućen.
Server preuzima cookie i interpretira njegov
sadržaj na način koji želi.
Internet i Web tehnologije
Cookie - Primer (on-line knjižara)


Prilikom prve posete sajtu za on-line prodaju knjiga, od
korisnika se zahteva da izabere jednu ili više oblasti za koje je
zainteresovan (tehnika, beletristika, ...)
Server kreira cookie sa sadržajem






oblast1=tehnika
oblast2=naucna_fantastika ...
Server šalje cookie klijentu.
Pretraživač izdvaja cookie iz odgovora i smešta ga u
odgovarajući direktorijum.
Kad god kasnije korisnik pristupi ovom sajtu, pretraživač
zajedno sa zahtevom šalje serveru i odgovarajući cookie
Na osnovu sadržaja cookie-a, Web server kreira, i vraća nazad
stranicu koja sadrži spisak novih knjiga iz oblasti za koje je
korisnik zainteresovan. Internet i Web tehnologije
Statički Web dokumenti


U svom najjednostavnijem obliku, Web
stranice su statičke - datoteke smeštene na
nekom serveru koje ˝čekaju˝ da budu
zatražene i koje se, bez bilo kakvih izmena,
dostavljaju klijentu.
HTML - jezik za kreiranje statičkih Web
stranica
Internet i Web tehnologije
HTML




HTML (HyperText Markap Language hipertekstualni markerski jezik)
Za kreiranje Web stranica koje sadrže tekst, grafiku i
hiperveze ka drugim Web stranicama
Markap language - znači da HTML služi za opis
načina na koji su dokumenti formatirani, odnosno
kako će biti prikazani u Web pretraživaču.
HTML definiše skup komandi za formatiranje koje,
ugrađene u prvobitni tekst dokumenta, daju uputstva
za prikazivanje sadržaja dokumenta.
Internet i Web tehnologije
HTML - tagovi
Tag
Opis
<html> ... </html>
Deklariše da je Web stranica pisana u HTML-u
<head> ... </head>
Omeđuje zaglavlje stranice
<title> ... </title>
Definiše naslov stranice (ne prikazuje se na stranici)
<body> ... </body>
Omeđuje telo stranice
<h n> ... </h n>
Omeđuje naslov nivoa n
<b> ... </b>
Postavlja ... u bold
<i> ... </i>
Postavlja ... u italik
<center> ... </center>
Horizontalno centrira ... na stranici
<ul> ... </ul>
Omeđuje neuređenu listu
<ol> ... </ol>
Omeđuje uređenu listu
<il> ... </il>
Omeđuje jednu stavku uređene liste
<br>
Umeće novi red (prelom linije)
<p>
Započinje novi paragraf
<hr>
Umeće horizonalnu liniju po celoj dužini stranice
<img src = “...“>
PrikazujeInternet
slikui Web tehnologije
<a href=“...“> ... </a>
Definiše hipervezu
HTML
<html>
<head><title> Primer stranice sa tabelom </title></head>
<body>
<table border=1 rules=all>
<caption> Razlike izmedju verzija HTML-a </caption>
<col align = left>
<col align = center>
<col align = center>
<col align = center>
<col align = center>
<tr><th>Stavka<th>HTML 1.0<th>HTML 2.0<th>HTML 3.0
<th>HTML 4.0</tr>
<tr><th>Hiperveze <td> x <td> x <td> x <td> x </tr>
<tr><th>Slike <td> x <td> x <td> x <td> x </tr>
<tr><th>Liste <td> x <td> x <td> x <td> x </tr>
<tr><th>Aktivne mape i slike<td>&nbsp<td>x<td>x<td>x</tr>
<tr><th>Forme<td> &nbsp <td> x <td> x <td> x </tr>
<tr><th>Formule<td> &nbsp <td> &nbsp <td> x <td> x </tr>
<tr><th>Tulbarovi<td> &nbsp <td>&nbsp<td> x <td> x </tr>
<tr><th>Tabele<td>&nbsp<td>&nbsp<td>x<td>x</tr>
<tr><th>Ugradnja objekata<td>&nbsp<td>&nbsp<td>&nbsp<td>x
</tr>
<tr><th>Skripte<td>&nbsp<td>&nbsp<td>&nbsp<td>x</tr>
</table>
</body>
</html>
Internet i Web tehnologije
HTML - Forme




HTML 1.0 je omogućavo samo jednosmernu komunikaciju.
Korisnik je mogao da dobije traženu stranicu od servera, ali je
teško mogao da vrati nazad povratnu informaciju.
U verziji HTML 2.0 uvedene su forme
Forme sadrže box polja (ili dugmad) koja korisnik može da
popuni traženim podacima ili učini izbor između više
ponuđenih opcija i unetu informaciju vrati vlasniku stranice.
Box-ovi: tag <input> u različitim oblicima:




Polje za unos teksta,
Kvadrati za štikliranje,
Radio dugme
Dugme Submit
Internet i Web tehnologije
HTML - Forme
<html>
<head><title> FORMA ZA NARUCIVANJE KNJIZARE CENTAR</title></head>
<body>
<h1> Forma za narucivanje knjiga </h1>
<form ACTION="http://www.centar-knjiga.com/cgi-bin/narudzba" method=POST>
<p> Ime <input name="kupac" size=46></p>
<p> Ulica<input name="ulica" size=20> Mesto <input name="mesto" size=14></p>
<p> Br. kreditne kartice <input name="cardno" size=10>
Istice <input name="istice" size=4>
Polje za unos teksta
MASTER <input name="cc" type=radio value="mastercard">
VISA <input name="cc" type=radio value="visacard"></p>
Radio dugme
<p>Narucujem knjigu <input name="knjiga" size=46></p>
<p>Povez Tvrdi <input name="povez" type=radio value="tvrdi">
Kvadrat za štikliranje
Meki <input name="povez" type=radio value="meki">
Dostava preko brze poste <input name="express" type=checkbox></p>
Dugme Submit
<p><input type=submit value="narucivanje"></p>
Hvala na poverenju.
</form>
</body>
</html>
Internet i Web tehnologije
HTML - Forme

Kada korisnik klikne na Submit dugme,
pretraživač pakuje informacije prikuljene sa
forme u jednu dugačku liniju i šalje je serveru
na obradu:


kupac=Petar+Petrovic&ulica=Beogradska+14
&mesto=Nis&cardno=1234567890&istice=9/07
&cc=mastercard&povez=tvrdi&express=on
Server tumači dobijeni string i preduzme
odgovarajuće akcije.
Internet i Web tehnologije
XML i XSL


HTML, sa ili bez formi, ne bavi se struktuiranjem
podataka na Web stranici niti razdvaja sadržaj od
formatiranja.
Nove aplikacije, novi zahtevi

Zamislimo program koji pretražuje Web u potrazi za
najjeftinijom knjigom ili CD-om. Program bi morao da
analizira veliki broj Web stranica raznih sajtova za
elektronsku trgovinu i da iz svake izdvoji naslove i cene
knjiga ili CD-ova. Ako su Web stranice napisane u
HTML-u, program će veoma teško moći da zaključi gde
se na stranici nalazi tražena informacija
Internet i Web tehnologije
XML i XSL


W3C - organizacija koja se bavi razvojem
Web-a i standardizacijom protokola za Web
uvela je
Dva nova jezika:


XML (eXtesible Markup Language) . opisuje
Web sadržaj na struktuirani način
XSL (eXtensible Style Language) opisuje
formatiranje Web stranice nezavisno od njenog
sadržaja
Internet i Web tehnologije
Primer XML dokumenta
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="book_list.xsl"?>
<book_list>
<book>
<title> Computer Networks, 4/e </title>
<author> Andrew S. Tanenbaum </author>
<year> 2001 </year>
</book>
<book>
<title> Internetworking with TCP/IP, Vol I</title>
<author> Douglas E. Comer </author>
<year> 2000 </year>
</book>
<book>
<title> Data Communications and Networking</title>
<author> Behrouz A. Forouzan, 2/e </author>
<year> 2001 </year>
</book>
</book_list>
Internet i Web tehnologije
Tagovi ukazuju na
smisao informacije
Laka pretraga po
različitim kriterijumima
Sadrži podatke, ali ne
kazuje ništa o tome
kako prikazati
podatke
XML

Omogućava kreiranje složenijih struktura:




Višestruka polja (npr. više od jednog autora knjige)
Opciona polja (npr. naslov pratećeg CD-ROM-a)
Alternativna polja (npr. URL knjižare, ako knjiga nije
rasprodata ili URL sajta za aukcijsku prodaju, ako je
knjiga rasprodata)
Polja se mogu deliti na podpolja:
<author>
<first_name> Andrew </first_name>
<last_name> Tanenbaum </last_name>
</author>
Internet i Web tehnologije
Primer XSL dokumenta
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
Početak HTML dokumenta
<body>
<table border="2">
<tr>
<th> Title </th>
Naslovna vrsta tabele
<th> Author </th>
<th> Year </th>
</tr>
<xsl:for-each select="book_list/book">
<tr>
<td><xsl:value-of select="title"/></td>
Vrste sa podacima
<td><xsl:value-of select="author"/></td>
<td><xsl:value-of select="year"/></td>
</tr>
</xsl:for-each>
</table>
</body>
Kraj HTML dokumenta
</html>
</xsl:template>
Internet i Web tehnologije
</xsl:stylesheet>
Definiše način
prikazivanja
podataka iz XML
dokumenta
Objašnjava kako
XML dok.
transformisati u
HTML dok.
Primer XSL dokumenta
<xsl:for-each select="book_list/book">
<tr>
<td><xsl:value-of select=”title”/></td>
<td><xsl:value-of select=”author”/></td>
<td><xsl:value-of select=”year”/></td>
</tr>
</xsl:for-each>


Slično for petlji iz C-a
Pretraživač jedanput kroz petlju za svaku knjigu iz
pridruženog XML dokumenta i u svakom prolasku
generiše pet HTML linija oblika: <tr> naslov, autor,
godina </tr> popunjenu podacima o jednoj knjizi.
Internet i Web tehnologije
XML/XSL
XML
+
HTML
XSL

XML/XSL predstavlja daleko fleksibilnije rešenje od HTML



Ako je potrebno u spisak uvrstiti nove knjige, dovoljno je u XML
dokument dopisati nova <book> polja; XSL ostaje neizmenjen
Ako treba promeniti način prikazivanja potrebno je modifikovati XSL
fajl, ali ne i XML dokument
Program koji na Web stranici traži informacije o nekoj knjizi,
analizira XML dokument.
Internet i Web tehnologije
Dinamički i aktivni Web dokumenti

Ne postoje u unapred definisanom obliku, već
se kreiraju na zahtev.


Dinamički dokument - Web server, po prijemu
zahteva, pokreće odgovarajući aplikacioni
program koji kreira dokument, a klijentu vraća
izlaz programa.
Aktivni dokument - Web stranica osim statičkog
sadržaja (HTML, slike i sl.) sadrži i program koji
se nakon učitavanja stranice izvršava na strani
klijenta (u pretraživaču)
Internet i Web tehnologije
Dinamički vs.
1. Klijent šalje zahtev serveru
Aktivni
1. Klijent šalje zahtev serveru
Program
Zahtev
Zahtev
Server
Klijent
2. Na strani servera se
izvršava program koji
kreira dokument
2. Server vraća klijentu
kopiju programa
Program
Dokument
Server
Klijent
3. Program se izvršava na strani
klijenta i kreira dokument.
Program
Program
Program
Dokument
Internet i Web tehnologije
Klijent
Program
Program
Server
3.
Server
vraća
klijentu
kreirani
dokument
Server
Klijent
Dokument
Klijent
Program
Server
Klijent
Server
Dinamički dokumenti - CGI
1.
2.
3.
4.
5.
6.
7.
8.
CGI (Common Gateway Interface Korisnik popunjava formu
opšti interfejs pristupa). CGI predstavlja
Forma se vraća serveru
standardizovani interfejs koji
omogućava Web serveru da ˝razgovara˝
Forma se predaje CGI-u
sa pozadinskim programima
CGI postavlja upit bazi podataka
Iz baze se preuzimaju traženi podaci
CGI kreira HTML stranicu
Stranica se vraća klijentu
Zastereli pristup
i prikazuje u pretraživaču
Pretraživač
Korisnik
Baza podataka
na hard disku
CGI skript
Web server
1
2
3
4
8
7 tehnologije
Internet i Web
6
5
Dinamički dokumenti - PHP


1.
PHP (Hypertext Processor)
Skript sadržan u HTML
stranici <?php . . . ?>
Klijent upućuje zahtev za
.php stranicom

2.
http://www.abcd.com/test.php
<html>
<body>
<h2>Ovo je sve sta znam o tebi:</h2>
<?php echo $HTTP_USER_AGENT?>
</body>
</html>
Web server otvara fajl
test.php, pronalazi u njemu
PHP skript, uzvršava ga,
modifikuje stranicu i vraća
je klijentu
Internet i Web tehnologije
Dinamički dokumenti - PHP
Primer 1/2
1. Korisnik popunjava formu
<body>
<form action=”action.php” method=”post”>
<p>Unesi svoje ime: <input type=”text” name=”name”> </p>
<p>Koliko imas godina: <input type=”text” name=”age”> </p>
<input type=”submit”>
</form>
</body>
</html>
Internet i Web tehnologije
Dinamički dokumenti - PHP
Primer 2/2
<html>
action.php
Parametri iz forme
<body>
<h1> Odgovor:</h1>
Zdravo <?php echo $name;?>.
Predvidjanje: sledece godine imaces <?php echo $age + 1;?> godina
</body>
</html>
<html>
<body>
<h1> Odgovor:</h1>
Zdravo Barbara.
Predvidjanje: sledece godine imaces 25 godina
</body>
</html>
Internet i Web tehnologije
Web server procesira i
modifikuje stranicu
action.php pre nego što
je vrati klijentu
Dinamički dokumenti

PHP





Orijentisan na spregu između Web servera i servera baze podataka
Poseduje promenljive, stringove, polja i većinu upravljačkih struktura
koje srećemo u C-u
Open source i dostupan je za slobodno korišćenje.
Posebno je projektovan za rad sa Apache web serverom (koji je
takođe open source).
Alternative:

JSP (JavaServer Pages).


Dinamički deo stranice se piše u programskom jeziku Java. Stranice
koje koriste ovu tehniku obično imaju nastavak .jsp.
ASP (Active Server Pages) je Microsoft-ova verzija PHP-a i JSP-a.
Za generisane dinamičkog sadržaja se koristi skript jezik Visual Basic
Script (ili VB skript). Stranice koje koriste ASP, obično imaju
nastavak .asp
Internet i Web tehnologije
Aktivni dokumenti



Skript jezici (npr. CGI, PHP, JSP i ASP)
problem procesiranja formi i interakcije sa
bazama podataka na serveru. Ali, npr.
nisu u stanju da reaguju na klik mišem ili da
direktno interaguje sa korisnikom koji koristi
pretraživač
Za kreiranje interaktivnih (aktivnih) stranica
neophodan je program koji se izvršava u
samom pretraživaču (a ne na serveru)
Internet i Web tehnologije
Aktivni dokumenti

Dva načina za kreiranje aktivnih dokumenata:


Program (koji kreira aktivni sadržaj na stranici) čuva na
serveru, u obliku binarnog kôda, a u HTML stranici
postoji tag u kome je navedeno ime fajla koji sadrži
program. - (Java)
Skrip jeziku koji se ugrađuje u sam HTML. Za razliku od
PHP skripta koji se izdvaja iz HTML stranice i izvršava
na serverskom računaru, skrip namenjen klijet iz HTML-a
izdvaja pretraživač i izvršava ga uz pomoć odgovarajućeg
interpretatora (JavaScript)
Internet i Web tehnologije
Aktivni dokumenti - Java




Java je objektno-orijentisan jezik zasnovan na C++.
Kompajlirani programi pisani u Javi (bajtkod - bytecode) su
portabilni - mogu se izvršavati na bilo kom računaru,
nezavisno od tipa procesora i operativnog sistema
Bajtkôd ne sadrži mašinske instrukcije za neki konkretan
procesor, već instrukcije koje se izvršavaju u interpretatoru za
Java bajtkôd, tj. u tzv. Java virtuelnoj mašini
Virtuelna mašina izvršava bajtkôd tako što u bajtkôdu
identifikuje pojedinačne komande (tzv. metode) i poziva
odgovarajuće funkcije pisane u mašinskom jeziku za ciljnu
mašinu.
Internet i Web tehnologije
Aktivni dokumenti - Java


Aplet - Java programi namenjeni za Web
Apleti se čuvaju na Web serveru u fajlovima sa
nastavkom .class. U HTML se uključuju pomoću
odgovarajućeg taga:
<OBJECT CODEBASE=”http://www.elfak.ni.ac.yu/java-apps”

CLASSID = ˝java:bgsound.class˝
Direktorijum na serveru koji

DATA = ˝bgsound.data˝
sadrži aplete

CODETYPE = ˝audio/MP3˝></OBJECT>
Ime fajla u kome je smešten
Tip podataka sadržanih u
aplet
bgsound.data
Ime fajla sa podacima koje
aplet treba da procesira


Učitani Aplet se prosleđuje virtuelnoj mašini gde se izvršava
 U primeru: reprodukuje
muziku
Internet i Web
tehnologije sadržanu u bgsound.data
Aktivni dokumenti - Java/ActiveX

Aplet može da sadrži i grafičku animaciju ili video.




Kao atributi taga OBJECT navode se dimenzije pravougaone oblasti
na ekranu pretraživača, gde će animacija/video biti prikazani.
Java apleti - fleksibilna zamena za pomoćne aplikacije i
plug_in-ove.
Alternativa:
ActiveX kontrole - Microsoft-ov odgovor na Java aplete



Programi kompilirani za Pentium procesore i izvršavaju se direktno,
bez posredovanja virtuelne mašine.
Brže od apleta i veće mogućnosti, u smislu korišćenja raspoloživih
softverskih i hardverskih resursa računara
Nedostaci: mogu koristiti samo na Pentium PC računarima, rizične u
pogledu sigurnosti
Internet i Web tehnologije
Aktivni dokumenti - JavaScript




Nema direktne veze sa Javom
Skript jezik koji se u izvornom obliku
ugrađuje u HTML stranicu (<script>)
Sadrži programske konstrukcije veoma
visokog nivoa
Pogodan za lako projektovanje interaktivnih
Web stranica.
Internet i Web tehnologije
JavaScript
Primer - procesiranje forme
<html> <head>
<script language="javascript" type="text/javascript">
function response(test_form){
var person = test_form.name.value;
Funkcija koja procesira
var years = eval(test_form.age.value) + 1;
document.open();
formu
document.writeln("<html><body>");
document.writeln("Zdravo" + person + ".<br>");
document.writeln("Predvidjanje: sledece godine imaces" + years + ".");
document.writeln("<body><html>");
document.close();
} </script>
</head>
<body> <form>
Događaj koji startuje
Unesi svoje ime: <input type="text" name="name"> <p>
funkciju
Koliko imas godina?: <input type="text" name="age"> <p>
<input type=submit value="submit" onclick="response(this.form)"></form>
</body> </html>
Internet i Web tehnologije
JavaScript vs. PHP
Pretraživač
Server
1
2
1
4
3
2
Korisnik
Korisnik
PHP modul

Pretraživač
JavaScript
Moguće je, i uobičajeno, da Web stranica sadrži oba
skript jezika, sa raspodeljenim zadacima
Internet i Web tehnologije
Generisanje i obrada Web sadržaja
XSL
interpretator
Klijentski racunar
Serverski racunar
Pretraživač
Web server
PHP
XML
interpretator
Pomocne
aplikacije
ASP
JSP
HTML
interpretator
JavaScript Plug-in Java virtuelna
masina
interpretator
Internet i Web tehnologije
CGI
HTTP



Protokol koji se koristi za komunikaciju
između Web pretraživača i Web servera
HTTP (HyperText Transfer Protokol protokol za prenos hiperteksta)
Klijent-server protokol aplikacionog sloja
TCP/IP steka, koji, za prenos podataka koristi
TCP (Web server na portu 80).
Internet i Web tehnologije
HTTP - Trajanje veze

Neperzistentna veza (verzije 0.9 i 1.0)



Preko uspostavljene TCP konekcije klijent šalje zahtev,
server vraća HTML stranicu i konekcija se zatvara.
Ako učitana Web stranica sadrži slike ili neki drugi
dodatni sadržaj, neophodno je da pretraživač radi prenosa
svakog takvog entiteta uspostavi posebnu TCP konekciju
sa serverom.
Neefikasan ako se prenose Web stranice koje osim
HTML-a sadrže i veći broj slika, ikona ili drugih pratećih
sadržaja.
Internet i Web tehnologije
HTTP - Trajanje veze

Perzistentna veza (verzija 1.1)





Pretraživač uspostavlja inicijalnu TCP konekciju, zatim
šalje zahtev i dobija odgovor.
Međutim, nakon slanja odgovora, server ne zatvara TCP
konekciju, već je ostavlja otvorenom dajući priliku
pretraživaču da preko iste TCP konekcije uputi dodatne
zahteve.
Tipično, server zatvara TCP konekciju po isteku nekog
zadatog vremena nakon poslednje upućenog zahteva.
Efikasniji prenos - dodatna opterećenja usled
uspostavljanja i raskidanja TCP konekcije raspodjeljuju se
na više HTTP
Pretraživač može dodatno da optimizuje prenos ako šalje
zahteve jedan za drugim
bez čekanja na odgovor
Internet i Web tehnologije
HTTP - Formati poruka
Zahtev
Odgovor
Metod
Statusna linija
Zaglavlje
Zaglavlje
Prazna linija
Prazna linija
Telo
(opciono)
Telo
(opciono)
Internet i Web tehnologije
HTTP - Formati poruka
Metodi

Definiše tip zahteva
Metod
Opis
GET
Zahtev za čitanjem Web stranice
HEAD
Zahtev za čitanjem zaglavlja Web stranice
PUT
Zahtev za prenos Web stranice na server
POST
Dodavanje sadržaja imenovanom resursu (npr. Web stranici)
DELETE
Zahtev za brisanjem Web stranice na serveru
TRACE
Echo poslatog zahteva
CONNECT
Rezervisano za neku buduću namenu
OPTIONS
Upit koji se odnosi na neke parametre servera
Internet i Web tehnologije
HTTP - Formati poruka
Metodi

GET



Klijent zahteva od servera da pošalje traženu stranicu
GET ime_fajla HTTP /1.1
HEAD


Klijent traži od servera ne celu stranicu već samo njeno zaglavlje
Zaglavlje stranice sadrži informacije o stranici tipa:


PUT




Kada je stranica kreirana ili poslednji put modifikovana, tip sadržaja stranice i sl.
Suprotno od GET
Upisuje stranicu na Web server (na hard disk)
Za postavljanje novih Web stranica na Web server (publikovanje)
POST



Slično PUT, ali opštije
Podaci se upisuju (predaju) u resurs koji se nalazi na datom URL
Npr. postavljanje nove poruke na Web forumu
Internet i Web tehnologije
HTTP - Formati poruka
Metodi

DELETE


TRACE



Testiranje veze sa serverom
Serveru vraća primljenu poruku zahteva.
CONNECT


Brisanje (uklanjanje) stranice sa Web servera
Za buduće namene
OPTIONS

Omogućava klijentu da postavi upit serveru koji se odnosi
na izvesne parametre rada servera ili parametre nekog
konkretnog fajla.
Internet i Web tehnologije
HTTP - Formati poruka
Status


Sadržan u prvoj linij odgovora
Trocifreni kôd -ukazuje klijentu da li je njegov
zahtev uspešno opsluže ili nije i ako nije zašto nije.
Kôd Značenje
Primer
1xx
Informativno
100 - server pristaje da obradi klijentov zahtev
2xx
Uspešno
200 - zahtev je prihvaćen i obrađen; 204 - odgovor ne sadrži telo
3xx
Preusmeravanje
301 - stranica je premeštena na drugu URL lokaciju; 304 - keširana
stranica je još uvek validna.
4xx
Greška klijenta
403 - zabranjen pristup stranici; 404 - stranica nije pronađena.
5xx
Greška servera
500 - interna greška servera; 503 - kasnije pokušaj ponovo
Internet i Web tehnologije
HTTP - Formati poruka
Zaglavlja poruka
Zaglavlje
Tip
Sadržaj
User-Agent
Zahtev
Informacija o pretraživaču i platformi
Accept
Zahtev
Tip stranica koje klijent može da procesira
Accept-Charset
Zahtev
Skup karaktera koji je prihvatljiv za klijenta
Accept-Encoding
Zahtev
Kodiranje stranice koje klijent može da procesira
Accept-Language
Zahtev
Prirodni jezik koji klijent može da procesira
Host
Zahtev
DNS ime servera
Authorization
Zahtev
Podaci za autorizaciju klijenta
Cookie
Zahtev
Sadrži cookie kojeg je server prethodno poslao klijentu
Date
Zahtev/Odgovor
Datum i vreme slanja poruke
Server
Odgovor
Opšte informacije o serveru
Content-Encoding
Odgovor
Način kodiranja stranice
Content-Language
Odgovor
Prirodni jezik korišćen na stranici
Content-Length
Odgovor
Veličina stranice u bajtovima
Content-Type
Odgovor
MIME tip stranice
Last-Modified
Odgovor
Datum i vreme poslednje promene stranice
Location
Odgovor
Set-Cookie
Odgovor
Instrukcija klijentu da zahtev pošalje na neko drugo mesto
Internet i Web tehnologije
Sadrži cookie kojeg server šalje klijentu
HTTP - Formati poruka
Zaglavlja poruka


User-Agent (korisnički agent) - klijent obaveštava servera o tipu
pretraživača koji koristi, operativnom sistemu i drugim osobinama
Accept obaveštavaju servera kakav sadržaj je klijent spreman da
prihvata






Accept - MIME tip stranice koji klijentov pretraživač može da obradi
(npr. text/html).
Accept-Charset - skup karaktera (npr. ISO-8859-5 ili Unicode-1-1)
koji klijent prepoznaje
Accept-Encoding - metod kompresije koji klijent podržava (npr. gzip)
Accept-Language - prirodni jezik (npr. Srpski) koji korisnik razume
Ako server ima mogućnost izbora stranice (npr. postoji više
varijanti iste stranice), on će izabrati o vratiti klijentu onu koja se
uklapa u postavljene zahteve
Ako server nije u mogućnosti da udovolji zahtevima klijenta,
vratiće odgovor sa postavljenim odgovarajućim kodom greške
Internet i Web tehnologije
HTTP - Formati poruka
Zaglavlja poruka



Host - sadrži ime servera, preuzeto iz URL-a.
Ispitivanjem sadržaja ovog polja, sever proverava da
li se zahtev odnosi baš na njega.
Authorization - neophodno za stranice koje su
zaštićene i za koje je klijent u obavezi da dokaže da
ima pravo da vidi stranicu
Cookie - dva zaglavlja


Cookie - koristi ga klijent da vrati serveru sadržaj cookiea kojeg je ranije poslat klijentu od strane neke mašine iz
domena servera
Set-Cookie - Koristi ga server za slanje sadržaja cookie-ja
klijentu
Internet i Web tehnologije
HTTP - Formati poruka
Zaglavlja poruka





Date (datum) - može se koristiti u oba smera i sadrži vreme i
datum kada je poruka poslata.
Server - server saopštava svoj identitet klijentu, ako želi.
Content- (sadržaj) omogućavaju serveru da opiše osobine
stranice koje šalje. (Značenje ovih zaglavlja je analogno
odgovarajućim Accept- zaglavljima).
Last-Modified sadrži datum i vreme kada je stranica poslednji
put modifikovana. Ima bitnu ulogu u keširanju stranica.
Location kada želi da obavesti klijenta da bi trebalo da
pokuša da potraži zahtevanu stranicu na nekom drugom
URL-u.
Internet i Web tehnologije
HTTP - Primer odgovora
Internet i Web tehnologije
Proksi serveri i keširanje stranica



Web klijent i Web server direktno
komuniciraju razmenom HTTP poruka preko
Interneta.
Da, ali ne uvek
Komunikacija klijent-server se može
ostvarivati i posredstvom jednog ili više
među-servera:


Firewall
Proxy server
Internet i Web tehnologije
Proksi serveri i keširanje stranica



Proxy - posrednik između lokalnih (intranet) korisnika i Web-a.
Omogućava optimizaciju kojom se smanjuje čekanje klijenata
na pribavljanje zahtevanih Web stranica.
Web pretraživači u mreži koja koristi proxy server su
konfigurisani tako da svoje HTTP zahteve ne upućuju
direktno udaljenim Web serverima već ih šalju lokalnom
proxy serveru koji u njihovo ime obavlja zahtevanu
transakciju.
Web
server
Klijent
LAN
Proksi
Globalni
Internet
Web
server
Keš
Web
server
Internet i Web tehnologije
Proksi serveri




Kada prvi korisnik iz intraneta pristupi određenoj Web stranici,
proxy mora da pribavi kopiju od servera na kome se stranica nalazi.
Proxy ostavlja kopiju u svom kešu i vraća traženu stranicu kao
odgovor na zahtev
Kada sledeći put neki korisnik pristupi istoj stranici, proxy uzima
podatke iz svog keša i ne šalje zahtev preko Interneta
Efektivno skraćuju vreme pribavljanja Web stranica, značajno
redukuju saobraćaj na Internetu i smanjuju opterećenje Web servera
Web
server
Klijent
LAN
Proksi
Globalni
Internet
Web
server
Keš
Web
server
Internet i Web tehnologije
Proksi serveri




Hijerarhija proxy servera

Lokalni proxy - proces na klijentskom računaru

Korporacijski proxy - proxy server interaneta

ISP proxy
Zahtev se šalje lokalnom proxy serveru,
Koji, ako nije u stanju da opsluži zahtev, zahtev prosleđuje korporacijskom proxy
serveru, a ovaj proxy serveru provajdera internet usluga i tako redom sve dok se u
nekom kešu ne pronađe tražena stranica.
Ako stranica ne postoji u kešu proxy servera na vrhu hijerarhije, ona se direktno
traži od Web servera, a onda prosleđuje nazad do pretraživača koji je uputio
zahtev i pri tome pamti u keševima svih posrednih proxy servera.
Pretraživač
Proksi
Proksi
Ruter
Internet
Klijentski
računar
LAN
Internet i Web tehnologije
ISP LAN
Proksi serveri


Podrška u HTTP, putem nekoliko namenskih
zaglavlja
Web server može da kontroliše kako proksiji
obrađuju svaku Web stranicu



Zaglavlje Max_Forewards - maksimalan broj
poxy servera između Web servera i klijenta
Max_Forewards = 1 - samo jedan proxy
Max_Forewards = 0 - zabrana keširanja stranice
Internet i Web tehnologije
Keširanje

Koliko dugo treba stavku čuvati u kešu ?






Ako se kopija predugo čuva ona može da zastari, original je u
međuvremenu, nakon što je kopija uneta u keš, promenjen
Ako se kopija čuva kratko - smanjuje se efikasnosti keširanja
zato što sledeći zahtev mora nepotrebno da ide do servera
Pojedine Web stranice su podložne čestim promenama (npr.
stranica sa rezultatima fudbalskih utakmica),
Druge mogu ostati neizmenjene u dužem vremenskom
intervalu (npr. stranica posvećena Grčkoj mitologiji).
Sklonost stranice promenama može da varira u vremenu
Neke stranice se ni u kom slučaju ne mogu keširati (dinamičke
Web stranice)
Internet i Web tehnologije
Keširanje


HTTP dozvoljava da server kontroliše keširanje na
dva načina:
Prvi način:



Koristi zaglavlje Last-Modified
Ako je stranica koja se upravo stavlja u keš promenjena
pre jednog sata, ona će biti čuvana u kešu jedan sat
Zasnovano na predviđanjima i zato ne garantuje da će
pretraživaču uvek biti vraćena ažurna kopija stranice
Internet i Web tehnologije
Keširanje

Drugi način

Uslovni GET zahtev - HTTP poruka koja sadrži zaglavlje: IfModified-Since (˝ako je modifikovana posle ...˝).

Korak 1: Pretraživač upućuje standardni GET zahtev proxy-ju .
Pretpostavimo da proxy u svom kešu ima traženu stranicu.

Korak 2: proxy šalje uslovnu GET poruku serveru sa upisanim
vremenom poslednje modifikacije keširane kopije u zaglavlju IfModified-Since
GET /page.htm HTTP /1.1
If-Modified-Since: datum, vreme
GET /page.htm HTTP /1.1
1
2
Proksi
server
Pretraživač
4
HTTP /1.1 200 Accepted
Content-type: text/html
[zahtevana HTML stranica u telu poruke]
Web
server
3
Internet i Web tehnologije
HTTP /1.1 304 Not-modified
[prazno telo poruke]
Keširanje




Pretpostavljeno da stranica nije modifikovana u međuvremenu, tj. od
datuma i vremena navedenih u zaglavlju If-Modified-Since
Korak 3: Server vraća proxy-ju odgovor sa statusnim kodom 304 (Not
modified - nije modifikovana) i bez tela.
Korak 4: Po prijemu odgovora, proxy vraća keširanu stranicu
pretraživaču
Da je zahtevana stranica u međuvremenu bila modifikovana, server bi
vratio proxy-ju novu kopiju stranice, koju bi proxy smestio u keš
(zajedno sa datumom i vremenom iz zaglavlja Last-Modified)
GET /page.htm HTTP /1.1
If-Modified-Since: datum, vreme
GET /page.htm HTTP /1.1
1
2
Proksi
server
Pretraživač
4
HTTP /1.1 200 Accepted
Content-type: text/html
[zahtevana HTML stranica u telu poruke]
Web
server
3
Internet i Web tehnologije
HTTP /1.1 304 Not-modified
[prazno telo poruke]
Keširanje

Kombinacija dva pristupa:



Prvih T sekundi nakon pribavljanja stranice proxy vraća
pretraživačima keširanu kopiju bez postavljanja pitanja serveru.
Po isteku T sekundi, proxy koristi uslovnu GET poruku za proveru
ažurnosti kopije
Proaktivno keširanje:




Kada proksi pribavi stranicu od servera, on je analizira i izdvaja
sadržane hiperveze
Proksi pribavlja i smesti u svoj keš stranice na koje ukazuju izdvojene
hiperveze, za slučaj da korisnik naknadno zatraži neku od njih
Skraćuje vreme pristupa za buduće zahteve
Povećava, a ne smanjuje saobraćaj (pribavljaju se i stranice koje
nikada neće biti korišćene).
Internet i Web tehnologije
Firewall

Intranet - lokalne mreže na kojima se koristi TCP/IP:



Lakšan je pristup Web-u od strane računara povezanih na
intranet (lokalni računari na isti način komuniciraju
međusobno kao i sa udaljenim serverima)
Omogućeno je spoljnim Internet korisnicima da pristupaju
informacijama i servisima dostupnim na korporacijskim
serverima (kao što je korporacijski Web server)
Iz sigurnosnih razloga, spoljnim korisnicima obično nije
dozvoljen direktan pristup korporacijskim serverima, već
se ostvaruje posredstvom specijalizovanog server, tzv.
firewall ili sigurnosni gateway, koji nadgleda i filtrira
mreži saobraćaj
Internet i Web tehnologije
Firewall



Firewall kontroliše protok informacija u oba smera
Presreće i filtrira pakete koji su sa Interneta upućeni lokalnim
serverima, kao i sve zahteve koji se iz intraneta šalju prema
Internetu
Filtriranje se na osnovu izvornih i odredišnih IP adresa i
brojev portova sadržanim u TCP/UDP paketima ili na bazi
nekih drugih kriterijuma
Klijent
Globalni
Internet
Firewall
Internet i Web tehnologije
intranet
Web
server