Download Gli ipertesti del World Wide Web: protocolli, tecniche di

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Gli ipertesti del World Wide Web
Funzionamento e tecniche di realizzazione
a cura di Loris Tissìno
(www.tissino.it)
Internet: termini essenziali
host
ip (internet protocol)
indirizzi IP
dns (domain name system)
dominio
World Wide Web
“ragnatela mondiale”
riferimento ai collegamenti ipertestuali tra
i documenti (logici) e non a quelli fisici tra
i calcolatori
basato su protocolli (HTTP) e linguaggi
(HTML) standard
Modello client-server
l'applicazione client (il browser) invia una
richiesta
l'applicazione server invia una risposta
URL
uniform resource locator,
localizzatore uniforme di risorse
esempi:
http://www.inv.org/
http://www.inv.org/percorso/doc.html
http://www.inv.org/mostra?id=51
Protocollo HTTP – richiesta

GET /percorso/doc.html HTTP/1.1
Host: ...
User-Agent: ...
Accept: ...
Accept-Language:
Referer: ...
If-modified-since: ...
...
Protocollo HTTP – risposta

HTTP/1.1 200 OK
Date: ...
Server: ...
Content-Type: ...
...
Linguaggio HTML
HTML, hyper-text markup language,
linguaggio di marcatura degli ipertesti
file di testo “puro”
permette collegamenti ipertestuali
locali o remoti
Esempio di codice HTML
 <HTML>
<HEAD>
<TITLE>Pagina web di esempio</TITLE>
</HEAD>
<BODY>
<P>Pagina di esempio a cura di
<A HREF=”http://www.tissino.it”>Loris
Tissino</a>.</P>
</BODY>
</HTML>
Standard aperti
HTTP e HTML sono standard aperti
Vantaggi:
sviluppo di diverse applicazioni client e
server, editors, tecnologie
supporto di tutte le piattaforme
nessun vincolo con un fornitore
specifico
Staticità e dinamicità
Si può considerare “dinamico”:
ciò che si muove (lampeggia, scorre...)
ciò che si modifica (è diverso, si aggiorna...)
Si può considerare “statico”:
ciò che sul server è già pronto per essere
inviato al client
ciò che giunto al client appare immobile
Staticità e dinamicità
Pagine web dinamiche:
elaborazione sul lato client
Pagine web generate dinamicamente:
elaborazione sul lato server
Dinamicità sul lato client
immagini animate
javascript
fogli di stile (css)
html dinamico
applets java
animazioni flash
audio / video
Elaborazione sul lato server
CGI, common gateway interface (perl, c)
ASP (active server pages)
PHP (php: hypertext preprocessor)
Elaborazione quando?
al momento della richiesta
al momento della messa in linea dei
contenuti
a intervalli regolari prestabiliti
Contenuti digitali
cd rom / dvd
sito web
Cd rom
puro contenuto (file semplici)
web cd
applicazioni (es. giochi)
cd interattivo (es. enciclopedie
multimediali)
Sito web
internet
intranet
extranet
Applicazioni web
applicazioni che si basano sull'interazione
via web con l'utente, che non si limita a
consultare (leggere, visualizzare) i
documenti
prevedono sessioni di lavoro di utenti
riconosciuti
Sessione di lavoro
registrazione utente (solo una volta)
dati utente, conferma via email, attivazione
login
inizio della sessione, a volte è previsto un
timeout
logout
fine della sessione
Cookies
lett. “biscotti”, piccole sequenze di
caratteri per il mantenimento delle
informazioni relative alla sessione
scambiate tra browser e server web
qualche pericolo per la privacy...
Cookies – un esempio (¼)
il browser chiede una pagina al server
il server risponde:
eccoti la pagina, ti prego di memorizzare il cookie di
nome “pinco” con valore “abcd01234”
la pagina contiene un modulo (con i
campi “nome utente” e “password”
Cookies – un esempio (2/4)
l'utente compila il modulo della pagina ed
il browser invia i dati insieme al cookie
utente=paperino
password=ltdnppqqq
cookie=abcd01234
il server riconosce l'utente, e memorizza
che al cookie “abcd01234” corrisponde
l'utente autenticato “paperino”
Cookies – un esempio (¾)
per le operazioni successive, il browser
invia solo la richiesta (non più nome
utente e password) accompagnata dal
cookie:
cookie=abcd01234
il server, in base al cookie, sa che l'utente
è “paperino”
Cookies – un esempio (4/4)
alla chiusura della sessione, il browser
richiama una pagina appositamente
predisposta, sempre passando il cookie:
cookie=abcd01234
il server memorizza che il cookie indicato
non è più associato all'utente “paperino”