G. Mecca – [email protected] – Università della Basilicata Tecnologie di Sviluppo per il Web...
-
Upload
anselmo-grande -
Category
Documents
-
view
224 -
download
2
Transcript of G. Mecca – [email protected] – Università della Basilicata Tecnologie di Sviluppo per il Web...
G. Mecca – [email protected] – Università della Basilicata G. Mecca – [email protected] – Università della Basilicata
Tecnologie di Sviluppo per il Web
Introduzione
Risorse e URI
versione 2.0Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons
(vedi ultima pagina)
2G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Sommario
Il Linguaggio HTML - Cenni Tipi MIME URI Riferimento ad URI Il Protocollo file Configurazione del Server HTTP
Risorse e URI >> Sommario
3G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Linguaggio HTML – Cenni
HTML: HyperText Markup Languageè’ il linguaggio con cui vengono costruite la
maggior parte delle risorse Web Ne diamo solo dei cenni (>>) Idea
costruire pagine (visualizzare testo)di carattere ipertestuale (collegamenti)e multimediale (immagini e altri media)
Risorse e URI >> Il Linguaggio HTML – Cenni
4G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Linguaggio HTML – Cenni
Obiettivo finaledescrivere al client come visualizzare e
come gestire l’interazione dell’utente con la pagina
es: selezione dei collegamenti Marcatura
per dare indicazioni al browser, vengono utilizzati marcatori (“tag”)
ogni marcatore ha una opportuna sintassi ed una semantica
Risorse e URI >> Il Linguaggio HTML – Cenni
5G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Linguaggio HTML – Cenni
<HTML> <HEAD> <TITLE>Programma del Corso di Sviluppo Web</TITLE> </HEAD> <BODY> <H1>Corso di Tecnologie di Sviluppo per il Web</H1> <P>Questa è una pagina di <B>esempio</B>.</P> <P><img src=“lavagnaWeb.gif”> <A href=“altraPagina.html”>
Questo e’ un collegamento ad un’altra pagina </A> </P><HR> <I>G. Mecca, ultima modifica Marzo 2003 </BODY> </HTML>
Risorse e URI >> Il Linguaggio HTML – Cenni
collegamento ad altra pagina(riferimento ed ancora)
riferimento ad immagine
>> /tmp/esempio.html
6G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Linguaggio HTML – Cenni
Riassumendouna pagina Web è una collezione di risorsecomposta di una risorsa principale, che
contiene il codice HTML (es: esempio.html)più una serie di altre risorse “interne”, come
immagini ed altri oggetti multimediali (es: lavagnaWeb.gif)
ad ogni pagina sono normalmente collegate altre pagine
Risorse e URI >> Il Linguaggio HTML – Cenni
7G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Tipi MIME (“MIME Types”)
Non tutte le risorse sono risorse HTML Tipi MIME (Multipurpose Internet Mail Ext.)
descrivono il contenuto delle risorsediversi formati (es: testo, HTML, gif, jpeg…)Identificatori standard per vari tipi di file
Il server specifica al browser il tipo MIMEtipo del contenuto (“Content-Type”)
Standard IETF (RFC 2045, RFC 2046)mantenuti da IANA
Risorse e URI >> Tipi MIME
8G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Tipi di Contenuto (“Content-Types”) text
text/plain text/html text/xml …
image image/gif image/jpeg image/png …
applicationapplication/pdf
application/zipapplication/mswordapplication/X-…
videovideo/mpeg …
audio multipart
multipart/form-data …
message model
Risorse e URI >> Tipi MIME
9G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Uniform Resource Identifiers (URI)
Sistema di indirizzamento su Webstringhe di caratteri ASCII che identificano le
risorse disponibili su Web Standard IETF (RFC 2396)
Internet Engineering Task Force Uniform Resource Identifiers (URI)
Uniform Resource Locators (URL)Uniform Resource Names (URN)
Risorse e URI >> URI
10G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Uniform Resource Identifiers (URI)
URLla risorsa è fisicamente accessibilela stringa descrive il metodo (primario) per
accedere alla risorsa URN
la stringa non descrive il metodo d’accessola risorsa può non essere fisicamente
accessibile (es: namespace) Ci concentreremo sugli URL
Risorse e URI >> URI
11G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI
Forma generale<protocollo>:<parte-dipendente-dal-protocollo>
Principali protocollihttpftpmailtofile
Risorse e URI >> URI
12G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI
Esempi:http://www.difa.unibas.it/users/gmecca/ ftp://lab.unibas.it/pubmailto:[email protected]:///d:/sites/users/gmecca/index.htmlgopher://spinaltap.micro.umn.edu/00/news:comp.infosystems.www.servers.unixtelnet://melvyl.ucop.edu/
Risorse e URI >> URI
13G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Terminologia
Nucleo del Web (“Web Core”)tutte le risorse il cui URI è basato su HTTP o
su varianti di HTTP (es: HTTPS) Periferia del Web
risorse il cui URI è basato su protocolli diversi da HTTP (es: FTP, mailto) ma sono direttamente collegate al nucleo
Ci concentriamo sul nucleoURI basati su HTTP
Risorse e URI >> URI
14G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Contengono riferimenti alle risorsees: file su disco
Organizzazione dei file per il serverfile system “virtuale”porzione del disco realeriorganizzata “montando” e “smontando”
pezzii riferimenti ai file per il server HTTP non
corrispondono nec. a riferimenti reali su disco
Risorse e URI >> URI
15G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
File system virtuale del server HTTPconvenzione di nomi di UNIX (/)costruito specificando una radicee montando sulla radice ulteriori pezzi (alias)
Directory radicesul file system virtuale si chiama “/”bisogna specificare a quale cartella del disco
reale corrisponde; es: f:\sito\
Risorse e URI >> URI
16G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Una volta montata la radiceè visibile sul file system virtuale tutto il
contenuto della radiceattenzione ai nomi
Sottodirectoryes: f:\sito\immagini\ >> /immagini/
Filees: f:\sito\immagini\icon.gif >>
/immagini/icon.gif
Risorse e URI >> URI
17G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Aliaspercorsi corrisponenti a “punti di montaggio”
E’ possibile montare:altre porzioni del file system reale sotto la
radice virtuale, specificando dei nomies: e:\utenti >> /users/
da quel momento tutto il contenuto è visibilees: e:\utenti\gmecca\ >> /users/gmecca/ e:\utenti\index.html >> /users/index.html
Risorse e URI >> URI
18G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Risorse e URI >> URI
e:\
dati
utentigmecca…
File system reale File system virtualef:\
Programmi
sito
immagini
pagine
icon.gif…
…
index.html…
/
immagini
pagine
icon.gif…
…
index.html…
users
gmecca…alias /users e:\utenti
root f:\sito
httpd.conf >>
19G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Notail meccanismo degli alias viene utilizzato
anche per montare applicazioni oltre che file Idea
all’applicazione viene associato un URIl’URI può non corrispondere ad un filerichiedendo l’URI viene richiesta l’esecuzione
dell’applicazione (non il contenuto del file)risposta generata dinamicamente (>>)
Risorse e URI >> URI
20G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI basati su HTTP
Forma generalehttp://<server>[:<porta>][/<percorso>][?<query>]
Server, porta, percorsoindirizzo IP del server e porta TCP (80)percorso nel file system virtuale
Querylista di coppie “nome=valore” separate da ¶metri per l’esecuzione di un’appl. (>>)
Risorse e URI >> URI
21G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Codifica dell’URI (“URI Encoding”)
Caratteri riservati nella sintassi; / ? : @ & = + $ , < > # % ‘ ’ (spazio)
{ } | \ ^ [ ] ` Questi caratteri devono essere codificati
formato: %<hex><hex> <hex><hex>: codifica hex del codice ASCIIes: spazio, cod ascii: 32, codifica: %20
Risorse e URI >> URI >> Codifica dell’URI
22G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI Basati su HTTP
Esempihttp://www.unibas.it/index.html
http://www.unibas.it:8080/news/index.html
http://www.difa.unibas.it/users/gmecca/corsi/index.html
http://www.difa.unibas.it/users/gmecca/icons/dot.gif
http://www.aci.it/pagabollo?targa=AD123DE
http://www.microsoft.com/redir.dll?prd=ie&ar=windows
http://www.finanze.it/cf.asp?utente=G.%20Mecca
Risorse e URI >> URI
23G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
URI
Una particolaritàriferimenti a “frammenti”: punti definiti in una
risorsaormai poco usati
Sintassi: #<nome-del-frammento>es: http://www.unibas.it/facolta/index.html#scienze
Semanticail browser visualizza la pagina e si posiziona
in corrispondenza dell’inizio del frammento
Risorse e URI >> URI
24G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Configurazione del Server HTTP
Nel corso di queste lezionivedremo progressivamente come installare e
configurare un server HTTP Prima operazione da effettuare
installazione dell’applicazionees: Internet Information Services
dal CD di Windows 2000 Pro/XP Proes: Apache (http://httpd.apache.org)
Risorse e URI >> Configurazione del Server HTTP
25G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Configurazione del Server HTTP
Seconda operazioneconfigurazione del server
Primi parametri da specificareradice del file system virtuale eventuali alias corrispondenti ad altre
cartelle Internet Information Services Apache
file httpd.conf
Risorse e URI >> Configurazione del Server HTTP
>> IIS, httpd.conf
26G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Richiesta del clientè necessario specificare l’URI della risorsa
Varie categorie di richiesterichieste esplicite dell’utente; es: l’utente
digita l’URI della richiesta nella barra indirizzirichieste di collegamenti; es: l’utente
seleziona un collegamento ipertestualerichieste implicite; es: per visualizzare una
pagina HTML è necessaria una immagine
Risorse e URI >> Riferimento ad URI
27G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Collegamenti e richieste impliciteURI provenienti dal codice HTML di una pag.
Risorse e URI >> Riferimento ad URI
partenza: Didattica destinazione: Facoltà
http://www.unibas.it/didattica/facolta/elenco.htmlhttp://www.unibas.it/didattica/index.html
http://www.unibas.it/didattica/logo.jpg
28G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Richieste esplicitetipicamente l’utente specifica l’URI completo
della risorsa Richieste implicite e collegamenti
nel codice HTML della pagina è possibile specificare un riferimento completo all’URI della destinazione
oppure un riferimento relativo
Risorse e URI >> Riferimento ad URI
29G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Riferimento relativo ad un URIcontiene solo <percorso>[?<query>]
es: facolta/elenco.htmlrelativo ad un URI base di riferimentocome URI base viene utilizzato l’URI della
pagina di partenza (es: Didattica)il riferimento viene automaticamente
espanso dal browser nell’URI completo della destinazione (es: Facoltà)
Risorse e URI >> Riferimento ad URI
30G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Esempi:nella pagina:
http://www.unibas.it/didattica/index.htmlURI reference: “facolta/elenco.html” >>
http://www.unibas.it/didattica/facolta/elenco.html
URI reference: “logo.gif” >> http://www.unibas.it/didattica/logo.gif
Risorse e URI >> Riferimento ad URI
31G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Espansione dell’URIle parti completamente mancanti (protocollo,
server, porta) vengono prese dall’URI di baseil percorso viene completatosi assume come directory iniziale quella
della pagina di partenzasi aggiunge la porzione di percorso
specificato nel riferimento relativo
Risorse e URI >> Riferimento ad URI
32G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Altri Esempi:nella pagina:
http://www.unibas.it/didattica/index.html URI reference: “/logo.gif” (nella radice) >>
http://www.unibas.it/logo.gifURI reference: “../index.html” (.. = padre) >>
http://www.unibas.it/index.html
Risorse e URI >> Riferimento ad URI
33G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riferimento ad URI
Caso particolare:URI reference il cui percorso termina con una
cartella e non con un file; es: http://www.unibas.it/didattica/
Completamento dell’URIil server restituisce un file di nome standard
es: index.html oppure default.htmparametro configurabile
Utilizzo tipico: pagina “host”pagina principale di un sito; es: http://www.unibas.itpagina il cui percorso corrisponde a “/”
Risorse e URI >> Riferimento ad URI
>> /tmp/riferimenti.html
34G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Terminologia
Sito Webcollezione di risorse Web con le seguenti
caratteristiche (es: http://www.difa.unibas.it)sono collocate allo stesso indirizzo di rete (server e
porta dell’URI comuni)sono raggiungibili tutte attraverso collegamenti
ipertestuali a partire dalla pagina principale del sito (percorso “/”)
Sottositiporzioni di un sito indipendenti per funzione e
gestione (es: www.difa.unibas.it/users/gmecca)
Risorse e URI >> URI
35G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Protocollo File
Esiste un protocollo alternativo ad httpil protocollo file://
Differenza fondamentaleserve a fare riferimento a file sul file system
reale della macchina (non su quello virtuale) Sintatticamente
gli URI si costruiscono in modo simileè possibile utilizzare la convenzione relativa
ai nomi di file del sistema operativo
Risorse e URI >> Il Protocollo file
36G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Il Protocollo File
A cosa servead aprire documenti html locali attraverso il
browser senza passare per un server httppuò essere utile per fare prove veloci del
codice html Attenzione alle differenze
le richieste non passano dal serverriferimenti relativi diversino espansione automatica
Risorse e URI >> Il Protocollo file
>> file:///pagine/riferimenti.html
37G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Configurazione del Server HTTP
Riassumendo: parametri fondamentaliradice del file systemaliasporta del servizio
Altri parametri da configuraredocumento standard (es: index.html)tipi MIME
Risorse e URI >> Configurazione del Server HTTP
38G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Configurazione del Server HTTP
Per i file sul discoil server HTTP decide il tipo MIME sulla base
dell’estensione del file richiesto Configurazione
elenco di estensioni con il relativo tipo MIME Per i contenuti dinamici
nel caso di servizi interattivi, il tipo MIME viene specificato dallo sviluppatore (>>)
Risorse e URI >> Tipi MIME
>> mime.types
39G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Configurazione del Server HTTP
Parametri avanzati di configurazioneloggingcaching
Loggingquanti file di log, quali informazioni registrare
Cachingabilitare o meno la cache del serverstrategia di gestione della cache
Risorse e URI >> Configurazione del Server HTTP
>> httpd.conf
40G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Riassumendo
Il Linguaggio HTML - Cenni Tipi MIME URI Riferimento ad URI Il Protocollo file Configurazione del Server HTTP
Risorse e URI >> Sommario
41G. Mecca - Tecnologie di Sviluppo per il WebG. Mecca - Tecnologie di Sviluppo per il Web
Termini della Licenza
Termini della Licenza
This work is licensed under the Creative Commons Attribution-ShareAlike License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/1.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Questo lavoro viene concesso in uso secondo i termini della licenza “Attribution-ShareAlike” di Creative Commons. Per ottenere una copia della licenza, è possibile visitare http://creativecommons.org/licenses/by-sa/1.0/ oppure inviare una lettera all’indirizzo Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.