47
Walter Cazzola Lezione 4: Applicazioni Web 1 Laboratorio di Informatica (Chimica) Laboratorio di Informatica (Chimica) Lezione Lezione 04: 04: Applicazioni Applicazioni Web. Web. Walter Walter Cazzola Cazzola Dipartimento Dipartimento di di Informatica Informatica e e Comunicazione Comunicazione Universit Universit à degli Studi di Milano. à degli Studi di Milano. e e - - mail: mail: [email protected] [email protected]

Laboratorio di Informatica (Chimica) - University of Genoa

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Walter Cazzola Lezione 4: Applicazioni Web 1

Laboratorio di Informatica (Chimica)Laboratorio di Informatica (Chimica)

LezioneLezione 04: 04: ApplicazioniApplicazioni Web.Web.

Walter Walter CazzolaCazzolaDipartimentoDipartimento didi InformaticaInformatica e e ComunicazioneComunicazioneUniversitUniversità degli Studi di Milano.à degli Studi di Milano.

ee--mail: mail: [email protected]@dico.unimi.it

Walter Cazzola Lezione 4: Applicazioni Web 2

Servizi Servizi ApplicativiApplicativi

World World WideWide WebWeb: : consultazioneconsultazione interattiva interattiva di di ipermediaipermediacon con modalitàmodalità pointpoint--andand--clickclick–– browserbrowser e e navigazionenavigazione–– configurazioneconfigurazione e e sicurezzasicurezza–– i i motorimotori di di ricercaricerca–– accesso ad altri serviziaccesso ad altri servizi

posta elettronicaposta elettronicascaricamento di filescaricamento di file

Walter Cazzola Lezione 4: Applicazioni Web 3

Servizi Servizi ApplicativiApplicativi

Posta elettronicaPosta elettronica: consente agli utenti di scambiarsi messaggi.: consente agli utenti di scambiarsi messaggi.–– SMTP: Simple Mail Transfer SMTP: Simple Mail Transfer ProtocolProtocol -- emailemail–– POP: Post Office POP: Post Office ProtocolProtocol –– recuperorecupero delladella postaposta elettronicaelettronica

dal dal serverserver remotoremoto..Trasferimento di fileTrasferimento di file tra calcolatoritra calcolatori

–– FTP: File Transfer FTP: File Transfer ProtocolProtocolConnessione a calcolatori remotiConnessione a calcolatori remoti: il proprio calcolatore è impiegato : il proprio calcolatore è impiegato

come un terminale ad interfaccia alfanumerica.come un terminale ad interfaccia alfanumerica.–– TelnetTelnet–– SshSsh

NewsNews: : messaggisticamessaggistica allall’’internointerno di di gruppigruppi di di interesseinteresse ((newsgroupsnewsgroups))–– NNTP: NNTP: NetworkNetwork News Transport News Transport ProtocolProtocol

Walter Cazzola Lezione 4: Applicazioni Web 4

Architettura Architettura ClientClient--ServerServer

In un’architettura In un’architettura clientclient--serverserver ci sono due calcolatori ci sono due calcolatori connessi alla rete:connessi alla rete:–– un un clientclient che sottopone richieste al che sottopone richieste al serverserver–– un un serverserver in grado di rispondere alle richieste in grado di rispondere alle richieste formulate da un formulate da un clientclient

L’architettura L’architettura clientclient--serverserver è alla base di quasi tutti i è alla base di quasi tutti i servizi applicativi di Internet. servizi applicativi di Internet.

La comunicazione fra La comunicazione fra clientclient e server può avvenire solo se e server può avvenire solo se i due hanno stabilito un protocollo comune di i due hanno stabilito un protocollo comune di comunicazione.comunicazione.

Walter Cazzola Lezione 4: Applicazioni Web 5

WWW: il ProtocolloWWW: il Protocollo

Il protocollo di comunicazione usato dal web e che Il protocollo di comunicazione usato dal web e che regola la trasmissione dei documenti ipertestuali si regola la trasmissione dei documenti ipertestuali si chiama chiama HyperTextHyperText Transfer Transfer ProtocolProtocol ((HTTPHTTP))

Si basa sul protocollo TCP/IP Si basa sul protocollo TCP/IP I documenti devono però essere in uno specifico I documenti devono però essere in uno specifico

formato: formato: HyperTextHyperText MarkupMarkup LanguageLanguage ((HTMLHTML))

Walter Cazzola Lezione 4: Applicazioni Web 6

BrowserBrowser

Internet ExplorerInternet Explorer–– sviluppato da Microsoftsviluppato da Microsoft–– scaricabile da http://www.microsoft.com (~20MB)scaricabile da http://www.microsoft.com (~20MB)

NetscapeNetscape CommunicatorCommunicator–– sviluppato da sviluppato da NetscapeNetscape–– scaricabile da http://www.netscape.com o ftp://ftp1. scaricabile da http://www.netscape.com o ftp://ftp1.

netscape.comnetscape.com (~14 MB)(~14 MB)Tutti e due sono disponibili su CDTutti e due sono disponibili su CD--ROM (riviste o ISP)ROM (riviste o ISP)

Walter Cazzola Lezione 4: Applicazioni Web 7

Browser (Segue)Browser (Segue)

La guerra dei browser.La guerra dei browser.19941994: : NetscapeNetscape realizza importanti estensioni per HTML realizza importanti estensioni per HTML

che solo il suo browser è in grado di gestire che solo il suo browser è in grado di gestire –– differenti dimensioni e colori per i testidifferenti dimensioni e colori per i testi–– fotografie, sfondi e immaginifotografie, sfondi e immagini–– pagine (pagine (frameframe) multiple in una singola finestra) multiple in una singola finestra

19961996: : NetscapeNetscape è il browser più popolare.è il browser più popolare.Microsoft in risposta aggiunge estensioni non standard ad Microsoft in risposta aggiunge estensioni non standard ad

HTML leggibili solo da Explorer.HTML leggibili solo da Explorer.

Verso la standardizzazioneVerso la standardizzazioneIl World Wide Web Il World Wide Web ConsortiumConsortium (W3C)(W3C)

Walter Cazzola Lezione 4: Applicazioni Web 8

Connessione Diretta ad InternetConnessione Diretta ad Internet

Per visitare un sito Web con un Per visitare un sito Web con un browser, si deve specificarne browser, si deve specificarne l’indirizzo (esplicitamente o l’indirizzo (esplicitamente o selezionando un selezionando un linklink))

Il Il clientclient invia la richiesta di invia la richiesta di connessione, formulata nel connessione, formulata nel modo specificato da HTTPmodo specificato da HTTP

Ricevuta la richiesta, il server Ricevuta la richiesta, il server Web trasmette le Web trasmette le informazioni al computer e il informazioni al computer e il browser provvede a browser provvede a visualizzarle

http://http://www.libero.itwww.libero.it

Web ServerWeb Server

visualizzarle

Walter Cazzola Lezione 4: Applicazioni Web 9

Collegamento via ModemCollegamento via Modem

Se siete collegati tramite un Se siete collegati tramite un modem, allora le informazioni modem, allora le informazioni fra fra clientclient e server passano e server passano attraverso il attraverso il providerprovider

http://http://www.libero.itwww.libero.it

ProviderProvider

Web ServerWeb Server

Walter Cazzola Lezione 4: Applicazioni Web 10

Connessione BrowserConnessione Browser--Server WebServer Webconnessioneconnessione

Lo stato della richiesta corrente è visualizzato Lo stato della richiesta corrente è visualizzato nella barra di stato del browser.nella barra di stato del browser.

Se l’indirizzo è sbagliato il browser segnalerà Se l’indirizzo è sbagliato il browser segnalerà un messaggio di errore.un messaggio di errore.

GET /mydir/myfile2.htm HTTP/1.0Referer: http://www.liuc.it/mydir/myfile1.htmUser-Agent: Mozilla/4.0b2 (Win95; I)Host: lmari.liuc.itAccept: image/gif, image/x-xbitmap, image/jpeg, */*

HTTP/1.0 200 OKcontent-type: text/html

BrowserBrowser Web ServerWeb Server1.1.

BrowserBrowser Web ServerWeb ServerGET/GET/myfile.htmlmyfile.html2.2.

BrowserBrowser Web ServerWeb ServerOK/OK/myfile.htmlmyfile.html3.3.

Walter Cazzola Lezione 4: Applicazioni Web 11

TerminologiaTerminologia

Utilizzando e configurando i browser ci si imbatte Utilizzando e configurando i browser ci si imbatte spesso in termini tecnici, di cui alcuni sono spesso in termini tecnici, di cui alcuni sono importanti anche per un uso corretto del web.importanti anche per un uso corretto del web.

proxyproxycookiecookieappletappletjavascriptjavascriptplugplug--in

home pagehome pageportaleportaleintranetintranetextranetextranet

in

Walter Cazzola Lezione 4: Applicazioni Web 12

ProxyProxy

Un Un proxyproxy è un server (computer + programma) che è un server (computer + programma) che svolge la funzione di "agente" per gli utenti di altri svolge la funzione di "agente" per gli utenti di altri computer.computer.

Configurando il proprio browser in modo che usi un Configurando il proprio browser in modo che usi un proxyproxy, le richieste di un documento non saranno , le richieste di un documento non saranno fatte dal proprio computer direttamente al sito fatte dal proprio computer direttamente al sito remoto, ma dal remoto, ma dal proxyproxy server, che si preoccupa poi server, che si preoccupa poi di fornirci il documentodi fornirci il documento

Walter Cazzola Lezione 4: Applicazioni Web 13

Funzione dei ProxyFunzione dei Proxy

Il Il proxyproxy dispone di una propria "cache", nella quale dispone di una propria "cache", nella quale memorizza tutti i documenti recuperati negli ultimi tempimemorizza tutti i documenti recuperati negli ultimi tempi–– se un utente richiede di caricare un documento che è già se un utente richiede di caricare un documento che è già

presente nella cache, il presente nella cache, il proxyproxy provvede a spedirglielo provvede a spedirglielo direttamente senza contattare il sito remoto, e quindi in direttamente senza contattare il sito remoto, e quindi in tempi più brevitempi più brevi

–– se il documento non è presente nella cache, il se il documento non è presente nella cache, il proxyproxycontatta il sito remoto, recupera il documento, lo gira contatta il sito remoto, recupera il documento, lo gira all’utente e lo memorizza nella cache all’utente e lo memorizza nella cache

Walter Cazzola Lezione 4: Applicazioni Web 14

CookieCookie

È un’informazione generata da un server Web e memorizzata nel È un’informazione generata da un server Web e memorizzata nel calcolatore dell’utente, pronta per essere reperita in un accesscalcolatore dell’utente, pronta per essere reperita in un accesso o futuro.futuro.

È un meccanismo per permettere la personalizzazione dalla parte È un meccanismo per permettere la personalizzazione dalla parte dell’utente dell’informazione ottenuta dal Web.dell’utente dell’informazione ottenuta dal Web.–– Es.Es. per personalizzare motori di ricerca con le proprie preferenze,per personalizzare motori di ricerca con le proprie preferenze, per per

memorizzare liste della spesa, per permettere che un utente partmemorizzare liste della spesa, per permettere che un utente partecipi ad ecipi ad un concorso, ma solo una volta.un concorso, ma solo una volta.

Quando un utente fa delle scelte, il server Web crea uno specifiQuando un utente fa delle scelte, il server Web crea uno specifico co cookiecookie, che è essenzialmente una stringa di testo marcata contenente , che è essenzialmente una stringa di testo marcata contenente le preferenze dell’utente, e trasmette tale le preferenze dell’utente, e trasmette tale cookiecookie al calcolatore al calcolatore dell’utente.dell’utente.

Il browser Web dell’utente, se abilitato, riceve il Il browser Web dell’utente, se abilitato, riceve il cookiecookie e lo memorizza e lo memorizza in un file speciale chiamato lista di in un file speciale chiamato lista di cookiecookie..

Walter Cazzola Lezione 4: Applicazioni Web 15

CookieCookie e Privacye Privacy

Spesso non solo la memorizzazione di informazioni Spesso non solo la memorizzazione di informazioni personali in un personali in un cookiecookie avviene senza essere notata, ma avviene senza essere notata, ma anche l’accesso ad essa. anche l’accesso ad essa. –– I server Web accedono automaticamente ai I server Web accedono automaticamente ai cookiecookie ogni ogni

qual volta l’utente stabilisce una connessione per fare una qual volta l’utente stabilisce una connessione per fare una richiesta.richiesta.

Questo meccanismo può facilmente essere usato per Questo meccanismo può facilmente essere usato per tenere conto delle scelte, numero di accessi, tenere conto delle scelte, numero di accessi, configurazione del calcolatore, …, di un utente e configurazione del calcolatore, …, di un utente e pertanto lederne la privacy.pertanto lederne la privacy.

Walter Cazzola Lezione 4: Applicazioni Web 16

CookieCookie

I I cookiescookies sono memorizzati nella propria cartella personale in sono memorizzati nella propria cartella personale in DocumentsDocuments and and SettingsSettings. Un esempio di . Un esempio di cookiecookie è il è il seguente:seguente:

JEB245CB39D2F6E092E79F959761300487E7adtech.de/036336913922988544JEB245CB39D2F6E092E79F959761300487E7adtech.de/03633691392298854489237035522892370355229522738*ADFC00010adtech.de/036336913922988544892390355229522738*9522738*ADFC00010adtech.de/036336913922988544892390355229522738*

Per verificare come questo meccanismo possa ledere la Per verificare come questo meccanismo possa ledere la privacy di un utente, aprire una finestra del browser e privacy di un utente, aprire una finestra del browser e visitare il sito: visitare il sito:

www.notrace.itwww.notrace.it

–– Scegliere Chi Sei? nella scheda Rubrica Scegliere Chi Sei? nella scheda Rubrica –– Scegliere Si nella casella dello Scegliere Si nella casella dello SpySpy Test Test –– CliccareCliccare su Entrasu Entra

Walter Cazzola Lezione 4: Applicazioni Web 17

AppletApplet, , JavaScriptJavaScript

Consentono di inserire dei programmi all’interno di page Consentono di inserire dei programmi all’interno di page webweb–– appletapplet: sono programmi eseguibili scritti in Java che : sono programmi eseguibili scritti in Java che

possono essere eseguiti direttamente all’interno di un possono essere eseguiti direttamente all’interno di un browser mediante l’interprete Java che si interfaccia browser mediante l’interprete Java che si interfaccia con il browser.con il browser.

–– JavaScriptJavaScript: è un linguaggio di : è un linguaggio di scriptingscripting, il codice del , il codice del programma è contenuto direttamente nella pagina web e programma è contenuto direttamente nella pagina web e viene interpretato ed eseguito dal browser al momento viene interpretato ed eseguito dal browser al momento del caricamento del documento.del caricamento del documento.

Walter Cazzola Lezione 4: Applicazioni Web 18

AppletApplet

Es.Es. di di appletappletJava sono Java sono reperibili al reperibili al sito:sito:www.javaonthebrain.com/www.javaonthebrain.com/brain.htmlbrain.html

Walter Cazzola Lezione 4: Applicazioni Web 19

JavaScriptJavaScript

Esempio:Esempio:

<<SCRIPT SCRIPT LANGUAGELANGUAGE==""JavaScriptJavaScript" " TYPETYPE==""texttext//javascriptjavascript">">document.writedocument.write("Oggi è "("Oggi è "+Date+Date())())</</SCRIPTSCRIPT>>

Walter Cazzola Lezione 4: Applicazioni Web 20

PlugPlug--inin

PlugPlug--inin: programma software (applicazione esterna) che : programma software (applicazione esterna) che estende le capacità di un browser in un modo estende le capacità di un browser in un modo specifico, ad esempio fornendo la possibilità di sentire specifico, ad esempio fornendo la possibilità di sentire un audio o vedere un video dal browser stesso.un audio o vedere un video dal browser stesso.

Es. di Es. di plugplug--insins–– AdobeAdobe AcrobatAcrobat ReaderReader;;–– AppleApple QuickTimeQuickTime;;–– RealReal PlayerPlayer;;–– ShockWaveShockWave Flash;Flash;–– JavaJava

Walter Cazzola Lezione 4: Applicazioni Web 21

Home PageHome PageHome pageHome page: pagina iniziale attorno a cui è organizzato : pagina iniziale attorno a cui è organizzato

un sito web, il quale è generalmente costituito da un un sito web, il quale è generalmente costituito da un insieme di pagine reciprocamente connesse.insieme di pagine reciprocamente connesse.

Esempio:Esempio:

Walter Cazzola Lezione 4: Applicazioni Web 22

PortalePortale

PortalePortale: sito web che offre facile accesso : sito web che offre facile accesso attraverso attraverso linklink ad altri siti su internet.ad altri siti su internet.

Ha la funzione di punto di partenza per navigare Ha la funzione di punto di partenza per navigare sul Web. sul Web.

Generalmente ha una collezione di siti e un Generalmente ha una collezione di siti e un motore di ricerca.motore di ricerca.

I portali più recenti offrono anche la posta I portali più recenti offrono anche la posta elettronica e altri servizi direttamente da una elettronica e altri servizi direttamente da una pagina che l’utente può personalizzare creando pagina che l’utente può personalizzare creando il proprio portale personale. il proprio portale personale.

Walter Cazzola Lezione 4: Applicazioni Web 23

Portali Generici e SpecificiPortali Generici e Specifici

–– YahooYahoo offre un portale personalizzato a offre un portale personalizzato a my.yahoo.commy.yahoo.com

–– NetscapeNetscape offre un portale personalizzato a offre un portale personalizzato a my.netscape.commy.netscape.com

–– Microsoft offre un portale personalizzato a Microsoft offre un portale personalizzato a home.microsoft.chome.microsoft.comom

Esistono portali specifici per:Esistono portali specifici per:–– Servizio di pagine gialle onServizio di pagine gialle on--line www.paginegialle.it line www.paginegialle.it –– Trasporto ferroviario www.trenitalia.com Trasporto ferroviario www.trenitalia.com –– Consultazione quotidiani www.repubblica.itConsultazione quotidiani www.repubblica.it–– Università www.unimi.it Università www.unimi.it –– Ministeri www.ministerosalute.it Ministeri www.ministerosalute.it

Walter Cazzola Lezione 4: Applicazioni Web 24

Intranet e ExtranetIntranet e Extranet

Servizi InternetServizi Internet: accessibili anche al di fuori : accessibili anche al di fuori della rete locale.della rete locale.

Servizi intranetServizi intranet: accessibili solo internamente : accessibili solo internamente alla rete locale.alla rete locale.

Servizi extranetServizi extranet: accessibili anche al di fuori : accessibili anche al di fuori della rete locale, ma solo da parte di alcuni della rete locale, ma solo da parte di alcuni utenti riconosciuti e abilitatiutenti riconosciuti e abilitati–– eses.: clienti e fornitori di un’azienda..: clienti e fornitori di un’azienda.

Walter Cazzola Lezione 4: Applicazioni Web 25

Esempio di ExtranetEsempio di Extranet

I servizi offerti dal sito I servizi offerti dal sito della Gazzetta Ufficiale della Gazzetta Ufficiale della Repubblica della Repubblica ((www.connect.it/gazzettawww.connect.it/gazzetta))sono disponibili solo a sono disponibili solo a utenti abbonati, previo utenti abbonati, previo pagamento di un canone.pagamento di un canone.

Walter Cazzola Lezione 4: Applicazioni Web 26

I Motori di Ricerca su WebI Motori di Ricerca su Web

Permettono la ricerca di contenuti sul Web.Permettono la ricerca di contenuti sul Web.Problema di eccezionale difficoltà:Problema di eccezionale difficoltà:

–– milioni di pagine;milioni di pagine;–– breve ciclo di vita della pagina (circa 1,5 breve ciclo di vita della pagina (circa 1,5

giorni);giorni);–– inerente complessità di capire di cosa parla inerente complessità di capire di cosa parla

una pagina e di una pagina e di quant’quant’è pertinente rispetto al è pertinente rispetto al concetto cercato;concetto cercato;

Walter Cazzola Lezione 4: Applicazioni Web 27

Motori di RicercaMotori di RicercaUn motore di ricerca è un server che fornisce un Un motore di ricerca è un server che fornisce un

servizio di ricerca sulla rete per parole chiave.servizio di ricerca sulla rete per parole chiave.Il motore di ricerca periodicamente guarda i Il motore di ricerca periodicamente guarda i

documenti sulla rete e li indicizza in base a documenti sulla rete e li indicizza in base a delle parole chiave.delle parole chiave.

L’utente specifica delle parole chiave, e in L’utente specifica delle parole chiave, e in risposta il motore di ricerca gli fornisce una risposta il motore di ricerca gli fornisce una lista di lista di linklink ai documenti contenenti quella ai documenti contenenti quella parola chiave.parola chiave.

Walter Cazzola Lezione 4: Applicazioni Web 28

Motori di Ricerca (Segue)Motori di Ricerca (Segue)

I motori di ricerca più famosi:I motori di ricerca più famosi:–– http://www.google.com/http://www.google.com/–– http://www.altavista.com/http://www.altavista.com/–– http://www.yahoo.com/http://www.yahoo.com/–– http://www.excite.com/http://www.excite.com/–– http://www.lycos.it/http://www.lycos.it/–– http://www.virgilio.it/http://www.virgilio.it/–– http://http://arianna.iol.itarianna.iol.it//

Walter Cazzola Lezione 4: Applicazioni Web 29

Motori di Ricerca (Segue)Motori di Ricerca (Segue)

Strategie:Strategie:Compilazione di Compilazione di digestdigest: :

–– persone valutano la rilevanza della pagina persone valutano la rilevanza della pagina rispetto a una tabella di contenutirispetto a una tabella di contenuti--chiave che chiave che cattura i concetti più frequentemente cercaticattura i concetti più frequentemente cercati

–– a volte viene offerto un sunto del contenutoa volte viene offerto un sunto del contenuto–– esempio: www.yahoo.comesempio: www.yahoo.com–– affidabile ma inevitabilmente poco dinamicoaffidabile ma inevitabilmente poco dinamico

Walter Cazzola Lezione 4: Applicazioni Web 30

I Motori di Ricerca (Segue)I Motori di Ricerca (Segue)

Indicizzazione: Indicizzazione: –– le pagine vengono regolarmente copiate su dischi le pagine vengono regolarmente copiate su dischi

del server;del server;–– la stringa passata dall’utente viene cercata la stringa passata dall’utente viene cercata

esaustivamenteesaustivamente ((stringstring matchingmatching))–– esempio: www.altavista.comesempio: www.altavista.com

–– più dinamico e completopiù dinamico e completo–– scarsa capacità di valutare la rilevanza della scarsa capacità di valutare la rilevanza della

pagina rispetto al concetto cercatopagina rispetto al concetto cercato–– # di occorrenze? Occorrenza nel titolo? # di # di occorrenze? Occorrenza nel titolo? # di occorrenze in pagine occorrenze in pagine linkatelinkate? # di occorrenze in ? # di occorrenze in pagine che pagine che linkanolinkano??

Walter Cazzola Lezione 4: Applicazioni Web 31

Motori di Ricerca (Segue)Motori di Ricerca (Segue)

Restringere il campo della ricerca:Restringere il campo della ricerca:–– Operatori Operatori BooleaniBooleani/Logici/Logici

–– ANDAND: : RestringeRestringe ilil campo campo didi ricercaricerca. Ad . Ad eses. “Freud AND . “Freud AND SvevoSvevo”, ”, entrambientrambi i termini i termini presentipresenti ma non ma non necessarimentenecessarimenteinsiemeinsieme..

–– OROR: : EstendeEstende ilil campo campo didi ricercaricerca. . RacchiudereRacchiudere i termini i termini unitiunitidada OR OR tratra (). Es. “Freud OR (). Es. “Freud OR SvevoSvevo”.”.

–– AND NOTAND NOT: : RestringeRestringe ilil campo campo didi ricercaricerca. Non è . Non è riconosciutoriconosciuto dada tuttitutti i i motorimotori. Ad . Ad eses. “Freud AND . “Freud AND NOT NOT SvevoSvevo”. Per ”. Per escludereescludere piùpiù didi un un terminetermine, , premetterglipremettergli OR e OR e racchiuderloracchiuderlo tratra ().().

–– NEARNEAR: simile ad AND, : simile ad AND, peròperò i due termini i due termini sisi devonodevonotrovaretrovare entroentro un un certocerto numeronumero didi parole parole didi distanzadistanzal'unol'uno dall'altrodall'altro. Es. “Freud NEAR . Es. “Freud NEAR SvevoSvevo”.”.

Walter Cazzola Lezione 4: Applicazioni Web 32

Motori di Ricerca (Segue)Motori di Ricerca (Segue)

–– Operatori SpecialiOperatori Speciali–– “”“”: : RacchiudereRacchiudere unauna frasefrase o o un’espressioneun’espressione tratra “”. “”.

Es. Es. “Freud e “Freud e SvevoSvevo” ” ilil testotesto dovràdovrà apparireapparire identicoidentico..–– ++: : RestringeRestringe ilil campo campo didi ricercaricerca ““+Freud ++Freud +SvevoSvevo” ”

entrambientrambi in termini in termini presentipresenti ma non ma non necessarimentenecessarimenteinsiemeinsieme..

–– --:: Restringe il campo di ricerca. Es. “Restringe il campo di ricerca. Es. “+Freud +Freud ––Svevo” Svevo” va premesso ai termini la cui occorrenza vogliamo va premesso ai termini la cui occorrenza vogliamo escludere.escludere.

–– **: : TroncamentoTroncamento* (* (raroraro: AltaVista, : AltaVista, NorthernLightNorthernLight e e qualchequalche directory). Es. “directory). Es. “SvevSvev*” *” accettaaccetta tuttetutte le le terminazioniterminazioni..

Walter Cazzola Lezione 4: Applicazioni Web 33

TelnetTelnetPermette la connessione a calcolatori remoti.Permette la connessione a calcolatori remoti.Il proprio calcolatore è impiegato come terminale a interfaccia Il proprio calcolatore è impiegato come terminale a interfaccia

alfanumerica.alfanumerica.

Walter Cazzola Lezione 4: Applicazioni Web 34

Posta ElettronicaPosta Elettronica

Sistema di Sistema di messaggisticamessaggistica e scambio di file che e scambio di file che riproduce alcuni aspetti del sistema postaleriproduce alcuni aspetti del sistema postale–– rende pressoché trasparente la comunicazione rende pressoché trasparente la comunicazione

fra applicativi/reti/protocolli diversifra applicativi/reti/protocolli diversi–– è forse il servizio di rete più popolare, anche è forse il servizio di rete più popolare, anche

per la facilità d’usoper la facilità d’usoProtocollo SMTPProtocollo SMTP

–– standard per il trasporto standard per il trasporto hosthost--toto--hosthost della della postaposta

Walter Cazzola Lezione 4: Applicazioni Web 35

Condizioni GeneraliCondizioni Generali

Ogni utente ha un indirizzo:Ogni utente ha un indirizzo:[email protected]@server.domain

namename può essere la può essere la loginlogin di un utente reale o di una lista di un utente reale o di una lista di distribuzione.di distribuzione.

serverserver, generalmente, è un server su cui , generalmente, è un server su cui giragira il il programma di gestione della posta (es. programma di gestione della posta (es. mailstudentimailstudenti).).

domaindomain è l’indirizzo dell’organizzazione presso la quale si è l’indirizzo dell’organizzazione presso la quale si trova il server (es. trova il server (es. unimi.itunimi.it).).

EsEs.: [email protected] .: [email protected] Per ogni parametro sono possibili degli Per ogni parametro sono possibili degli aliasalias

Walter Cazzola Lezione 4: Applicazioni Web 36

Formato del Messaggio (SMTP)Formato del Messaggio (SMTP)

DateDate:: <ora e data di spedizione> <ora e data di spedizione> FromFrom:: <<loginlogin del mittente> (automatica) del mittente> (automatica) ToTo: <uno o più indirizzi> : <uno o più indirizzi> SubjectSubject: <oggetto del : <oggetto del msgmsg>>

<una linea vuota><una linea vuota><il messaggio vero e proprio><il messaggio vero e proprio>

–– il messaggio è per definizione del protocollo SMTP solo il messaggio è per definizione del protocollo SMTP solo in formato ASCII.in formato ASCII.

Walter Cazzola Lezione 4: Applicazioni Web 37

Formato del Messaggio (SMTP) Formato del Messaggio (SMTP)

Altri campi dell’intestazione sonoAltri campi dell’intestazione sonoReplyReply toto: indirizzo a cui inviare la risposta : indirizzo a cui inviare la risposta CcCc: : carbon copycarbon copy, equivale a ‘, equivale a ‘e.e. p.cp.c.’ .’ EncryptedEncrypted: rif. alla tecnica crittografica usata: rif. alla tecnica crittografica usataReceivedReceived: gateway che l’ha inoltrato: gateway che l’ha inoltratoBccBcc: non mostra gli indirizzi dei co: non mostra gli indirizzi dei co--destinataridestinatariMessageMessage--IDID: identificativo univoco del : identificativo univoco del msgmsg

Walter Cazzola Lezione 4: Applicazioni Web 38

Formato del Messaggio (SMTP)Formato del Messaggio (SMTP)

AttachmentsAttachments (allegati):(allegati):–– immagini, testo formattato con word immagini, testo formattato con word processorprocessor, file , file

audio sono spediti come allegato (audio sono spediti come allegato (attachmentattachment) con una ) con una codifica ASCII codifica ASCII ad hocad hoc (MIME)(MIME)

–– il file viene ricopiato in coda al messaggio ed arriva al il file viene ricopiato in coda al messaggio ed arriva al destinatario con la stessa forma (nome, tipo, ecc.)destinatario con la stessa forma (nome, tipo, ecc.)

–– permette la distribuzione permette la distribuzione miratamirata ed ed attivaattiva di novità, di novità, aggiornamenti ecc.aggiornamenti ecc.

–– alternativa alla distribuzione alternativa alla distribuzione universaleuniversale (a meno di siti (a meno di siti riservati) e riservati) e passivapassiva attraverso la pubblicazione sul webattraverso la pubblicazione sul web

Walter Cazzola Lezione 4: Applicazioni Web 39

Posta ElettronicaPosta Elettronica

NetiquetteNetiquette: : galateo per l’utilizzo di internet.galateo per l’utilizzo di internet.FlameFlame: : messaggio ‘messaggio ‘infuocato’infuocato’, da evitare., da evitare.SpamSpam: : EE--mail non richiesta, mail non richiesta, generalmenetegeneralmenete di tipo di tipo

commerciale, inviata a un grande numero di utenti.commerciale, inviata a un grande numero di utenti.SmiliesSmilies

–– ::--)) sto sorridendosto sorridendo–– ::--(( sono tristesono triste–– ;;--)) sto scherzandosto scherzando–– ::--oo sono sorpresosono sorpreso–– ::--DD sto ridendosto ridendo

Walter Cazzola Lezione 4: Applicazioni Web 40

Software Lato Server Software Lato Server

Il protocollo SMTP ha un’architettura Il protocollo SMTP ha un’architettura clientclient--serverserver::

–– la parte la parte serverserver è il programma che si occupa di è il programma che si occupa di instradare e distribuire i messaggiinstradare e distribuire i messaggi

–– è presente su alcune macchine che svolgono la è presente su alcune macchine che svolgono la funzione di funzione di serverserver di posta elettronicadi posta elettronica

–– sendmailsendmail, comunemente in ambiente , comunemente in ambiente UnixUnix//LinuxLinux–– Outlook, comunemente in ambiente MicrosoftOutlook, comunemente in ambiente Microsoft

Walter Cazzola Lezione 4: Applicazioni Web 41

Software Lato Software Lato ClientClient ((MailerMailer))

La parte La parte clientclient sul nostro computer è il programma sul nostro computer è il programma che permette di:che permette di:–– ricevere e leggere sul nostro computer i messaggi ricevere e leggere sul nostro computer i messaggi

destinati ai nostri indirizzi di posta.destinati ai nostri indirizzi di posta.–– cancellare/salvare i messaggi e gli eventuali cancellare/salvare i messaggi e gli eventuali

attachmentsattachments–– rispondere ai messaggi oppure ritrasmetterli per rispondere ai messaggi oppure ritrasmetterli per

conoscenzaconoscenza–– tenere alias mnemonici degli indirizzi più usati e liste di tenere alias mnemonici degli indirizzi più usati e liste di

distribuzionedistribuzione–– Pine (Pine (UnixUnix//LinuxLinux), ), EudoraEudora ((WinWin, , MacMac), il browser ), il browser Navigator direttamenteNavigator direttamente

Walter Cazzola Lezione 4: Applicazioni Web 42

L’Ufficio PostaleL’Ufficio Postale

Il protocollo SMTP implementa alcuni servizi Il protocollo SMTP implementa alcuni servizi dell’ufficio postaledell’ufficio postale–– sistema distributivo trasparentesistema distributivo trasparente–– notifica di utente ignoto/mancata consegnanotifica di utente ignoto/mancata consegna–– effettiva lettura non garantitaeffettiva lettura non garantita–– fermoposta: non perdiamo messaggi restando fermoposta: non perdiamo messaggi restando

scollegatiscollegati–– autenticazione del mittente non garantita (chi autenticazione del mittente non garantita (chi

scrive?) scrive?)

Walter Cazzola Lezione 4: Applicazioni Web 43

Protocolli di Posta ElettronicaProtocolli di Posta Elettronica

POP POP -- Post Office Post Office ProtocolProtocol–– Per la gestione della posta quando il programma Per la gestione della posta quando il programma

di posta locale non risiede sul computer di posta locale non risiede sul computer dell’utente ma su quello del suo dell’utente ma su quello del suo providerprovider

–– Gestisce l’accesso dell’utente alla casella di Gestisce l’accesso dell’utente alla casella di posta, fornendo funzioni di autenticazione posta, fornendo funzioni di autenticazione utente e di gestione della casella di posta.utente e di gestione della casella di posta.

Walter Cazzola Lezione 4: Applicazioni Web 44

Posta via WebPosta via Web

Vari portali di successo propongono il Vari portali di successo propongono il mail servermail serverintegrato nel sito stesso, al quale accedere col integrato nel sito stesso, al quale accedere col protocollo http: protocollo http: –– netscape.comnetscape.com, , hotmail.comhotmail.com, , libero.itlibero.it sono solo sono solo

alcuni esempialcuni esempiVantaggio: accesso a un server Vantaggio: accesso a un server affidabile affidabile e e

gratuitogratuito..Svantaggio: registrazione e pubblicitàSvantaggio: registrazione e pubblicità

Walter Cazzola Lezione 4: Applicazioni Web 45

Posta via WebPosta via Web

Walter Cazzola Lezione 4: Applicazioni Web 46

Altri Servizi via WebAltri Servizi via Web

Tutti i browser implementano il protocollo HTTP, ma in Tutti i browser implementano il protocollo HTTP, ma in genere sono genere sono multiprotocollomultiprotocollo, sono in grado cioè di , sono in grado cioè di comunicare con altri tipi di server.comunicare con altri tipi di server.

In genere fungono anche da In genere fungono anche da clientclient per:per:–– la posta (SMTP/POP/IMAP)la posta (SMTP/POP/IMAP)

–– menu strumenti, posta in Internet Explorermenu strumenti, posta in Internet Explorer–– menu menu communicatorcommunicator, , messengermessenger in in NetscapeNetscape

–– il trasferimento di file (FTP)il trasferimento di file (FTP)–– es. ftp://es. ftp://ftp.microsoft.comftp.microsoft.com//

–– le news (NNTP)le news (NNTP)

Walter Cazzola Lezione 4: Applicazioni Web 47

Software dalla ReteSoftware dalla Rete

FreewareFreeware: programmi distribuiti gratuitamente e : programmi distribuiti gratuitamente e utilizzabili da chiunque senza limitazioni.utilizzabili da chiunque senza limitazioni.

SharewareShareware: programmi distribuiti gratuitamente così che : programmi distribuiti gratuitamente così che sia possibile provarli prima di acquistarli. Spesso hanno sia possibile provarli prima di acquistarli. Spesso hanno alcune limitazioni (temporali, funzionali) di utilizzo.alcune limitazioni (temporali, funzionali) di utilizzo.