2Dove vogliamo arrivare:
|
|
- Virginia Giannini
- 8 anni fa
- Visualizzazioni
Transcript
1 2Dove vogliamo arrivare: siti web dinamici Per programmazione lato server si intende quella serie di tecniche che consentono di produrre risorse in tempo reale, che un server web può restituire ai client senza che esista un file statico corrispondente ad esse, ottenendo così dei siti web dinamici. Questo può essere ottenuto tramite programmi in grado di generare, su richiesta, flussi di dati che vanno a costituire formati tipici del Web, come (X)HTML, CSS, JPEG, GIF (ma in linea di principio qualsiasi tipo di file gestibile dal browser). La programmazione lato server è utilizzata per accedere a basi di dati tramite un interfaccia web, per autenticare gli utenti, ecc. In questo modo, si possono costruire applicazioni interattive simili a quelle usuali, per quanto con qualche limitazione (dovuta all interazione tra client e server, che comporta la ricostruzione dell interfaccia ad ogni passo). Questo genere di applicazioni vengono spesso definite applicazioni web e si ritengono costituite dall insieme dei file e directory che compongono il sito web dinamico, includendo quindi sia i programmi lato server che i file (X)HTML, i fogli di stile, le eventuali immagini utilizzate. Una componente fondamentale delle applicazioni web è data dall accesso a basi di dati, in quanto sempre più spesso i dati che costituiscono le pagine web provengono da archivi che li conservano in forma strutturata, sia per facilità di manipolazione che che l oggettiva esigenza di mantenere grandi quantità di dati. L appendice A richiama brevemente alcuni principi relativi alle basi di dati. Poiché l utente può fornire dei dati al server tramite i form (X)HTML, la risorsa creata dal programma sul server spesso dipende proprio da tali dati. Si pensi per esempio all output di un motore di ricerca, costruito dinamicamente sulla base delle parole chiave impostate dall utente ed a partire da una ricerca su un database contenente la descrizione delle pagine web. A questo scopo, è necessario che ci sia un interfaccia ben definita tra server HTTP e programmi fisicamente residenti sulla macchina server, che permetta lo scambio di dati nell una e nell altra direzione: il programma dovrà ricevere i vari dati relativi alla specifica transazione, inclusi gli eventuali parametri forniti dall utente, mentre il server dovrà ricevere la risorsa generata dal programma. Questo capitolo funge da introduzione ai principi generali, che verranno poi approfonditi grazie ai linguaggi PHP e Java nei capitoli successivi. 2.1 Il server web Il server web, di base, è il solo programma server che gestisce il protocollo HTTP. Questo significa che è un daemon in attesa su una porta TCP (per convenzione, la
2 60 Dove vogliamo arrivare: siti web dinamici Figura 2.1: Il server web e le risorse statiche porta 80, ma può essere configurato in modo da rispondere su altre porte). L attività principale del server è distribuire risorse, secondo le richieste dei client. Le risorse distribuite sono normalmente ospitate in un sottoalbero specifico del file system (a cui il server ha accesso, cfr. figura 2.1), ma possono anche essere generate all atto della richiesta, di solito sulla base di parametri specificati dall utente all interno di un modulo (X)HTML. Per permettere ciò, il server HTTP ha la possibilità di attivare programmi scritti in qualsiasi linguaggio, in grado di manipolare tali parametri e creare un output in una forma trasferibile all utente come se fosse una risorsa statica. A questo scopo si usano varie tecniche cosiddette server-side, descritte nei paragrafi successivi. In ogni caso, anche i programmi che generano dinamicamente le risorse sono ospitati nel sottoalbero, in punti specifici determinati a priori per questioni di sicurezza. La distribuzione di risorse su richiesta non è però l unica azione compiuta dal server web: altri compiti gestionali fanno parte delle sue attività, come l identificazione della risorsa, del suo tipo MIME, l eventuale autenticazione dell utente (poiché è possibile anche proteggere alcune risorse dall accesso pubblico), ed infine la registrazione degli eventi. Per comprendere meglio la complessità della gestione di un server web, esaminiamo come avvengono i vari passi nel server web più diffuso, Apache: 1. Traduzione da URI a nome di file: i server web hanno la possibilità di far corrispondere dei percorsi virtuali a dei percorsi reali nel proprio albero dei do-
3 2.2 Il protocollo HTTP 61 cumenti; in questi casi, è necessario che in prima battuta gli URI richiesti dai client vengano tradotti. 2. Verifica dell identità dell utente: per quanto non utilizzata spesso, c è sempre la possibilità di concedere l accesso a determinate risorse in modo controllato. Il primo passo è la verifica dell identità dell utente, effettuata tramite username e password nel caso più semplice, oppure tramite firma digitale se si utilizza HTTPS. 3. Verifica dei privilegi di accesso: una volta identificato l utente, bisogna verificare se ha diritto di accedere alla risorsa. 4. Altre forme di autenticazione (per esempio, gestite da moduli che confrontano l utente con dati presenti su basi di dati). 5. Determinazione del tipo MIME dell oggetto richiesto: ciò permette sia di istanziare opportunamente la risposta, sia eventualmente di attivare moduli per la gestione di determinati tipi di documenti. 6. Fixups : estensioni ancora poco utilizzate. 7. Invio della risposta al client. 8. Registrazione degli eventi in appositi file di log (accessi, risorse richieste, eventuali errori). In Apache, ogni passo è gestito da uno o più moduli tramite un apposita API. Parte dei moduli sono sviluppati direttamente dagli sviluppatori di Apache e sono parte del suo codice, altri sono stati prodotti da altri, spesso per la connessione con altri programmi esterni (per lo scripting, CGI, ecc.), ed è possibile aggiungerne ulteriori, sviluppati in proprio, per sviluppare funzionalità particolari. 2.2 Il protocollo HTTP Come già accennato nel paragrafo 1.3, browser e server comunicano tramite il protocollo HTTP. In particolare, il browser invia al server una particolare struttura dati chiamata richiesta HTTP, contenente un metodo e gli eventuali parametri necessari (per esempio, il comando necessario per ricevere un file, di cui si fornisce l URI), e riceve dal server un analoga struttura, detta risposta HTTP, contenente l esito della richiesta, il quale normalmente incorpora il file che poi il browser mostrerà all utente. Il protocollo HTTP è disponibile in tre versioni (0.9, 1.0, 1.1), di cui la più utilizzata è ormai la La richiesta HTTP La richiesta HTTP consiste di due parti: un intestazione (header) ed un corpo (body). L intestazione è costituita da una serie di linee di testo, di lunghezza limitata.
4 62 Dove vogliamo arrivare: siti web dinamici Tabella 2.1: Metodi HTTP Metodo Richiesta Nota GET GET risorsa HTTP/ver Richiede al server l invio di un file, il cui percorso è indicato dal parametro risorsa. POST POST risorsa HTTP/ver Invia alla risorsa delle informazioni, racchiuse nel corpo della richiesta come coppie attributo=valore. Risorsa normalmente è un programma lato server in grado di elaborare tali informazioni e restituire una nuova risorsa creata dinamicamente, che sarà inclusa nel corpo della risposta HTTP. HEAD HEAD risorsa HTTP/ver Equivalente al GET, solo che il server restituisce esclusivamente l intestazione della risposta HTTP. Utile per diagnostica, o per la verifica della data di modifica di una risorsa. La prima riga contiene la richiesta vera e propria, costituita da un metodo, l URI cui si riferisce la richiesta, e la versione del protocollo utilizzata. Seguono poi alcune righe di testo contenenti delle intestazioni (header), ovvero metadati scambiati tra browser e server. Il corpo della richiesta è separato dall intestazione tramite una linea vuota. Nella richiesta HTTP il più delle volte è vuoto, ma potrebbe contenere dei dati che il browser passa al server (cfr. paragrafo 2.3.3). Supponiamo che l utente abbia cliccato sul browser un link che rimanda all U- RI Il browser invierà al server la seguente richiesta HTTP (semplificata): Listato 2.1: Una richiesta HTTP minimale 1 GET /dir1/dir2/file.html HTTP/1.1 2 Host: I metodi I metodi corrispondono ai comandi che il browser invia al server per ottenere dei servizi. Per lo svolgimento delle funzioni del web server, avremo bisogno almeno di un metodo per richiedere l invio di un file ed uno per inviare i dati eventualmente inseriti dall utente in un form. Ce ne sono però anche altri, molto meno usati ed a volte proprio disabilitati per non incorrere in problemi di sicurezza. I metodi del protocollo HTTP (comuni alle versioni 1.0 e 1.1) sono illustrati nella tabella 2.1. Il parametro risorsa viene ricavato dall URI che si richiede, sottraendo la porzione relativa a protocollo e dominio (che invece viene usato per determinare il server a
5 2.2 Il protocollo HTTP 63 cui collegarsi); non necessariamente corrisponde esattamente ad un percorso nel file system del server. Il secondo parametro, ver, indica la versione di HTTP usata per la richiesta. Altri metodi sono disponibili a partire dalla versione 1.1, ma sono poco usati; non verranno quindi trattati La risposta HTTP La struttura della risposta HTTP inviata dal server al browser è sostanzialmente identica a quella della richiesta: c è un intestazione che contiene un messaggio del server (di successo o fallimento), sotto forma di codice di stato, seguito da eventuali intestazioni (alcune delle quali necessarie all interpretazione della risposta). Poi c è un corpo che invece il più delle volte non è vuoto, ma contiene il file richiesto per esempio tramite il metodo GET. Alla richiesta illustrata nell esempio precedente, il server potrebbe rispondere nel modo seguente: Listato 2.2: Una tipica risposta HTTP 1 HTTP/ OK 2 Content-Type: text/html 3 Content-Length: <html> 6 <head> (tutto il file richiesto) 9... I codici di stato del server Non sempre il server sarà in grado di soddisfare la richiesta del browser. Quando non è possibile, risponderà con un codice numerico seguito dalla descrizione testuale del motivo per il quale la richiesta non è stata soddisfatta. Il codice numerico è un numero a 3 cifre, di cui la prima identifica la categoria cui il codice appartiene: 1XX - codici puramente informativi; 2XX - codici che indicano il successo della richiesta da parte del client; 3XX - codici che indicano che la richiesta è stata ricevuta ma è necessaria un ulteriore azione affinché il servizio richiesto sia effettivamente fornito; 4XX - codici che indicano errori nella richiesta; 5XX - codici che indicano errori sul server, o impossibilità di assolvere alla richiesta.
6 64 Dove vogliamo arrivare: siti web dinamici La tabella 2.2 illustra i codici di stato più frequenti. Tabella 2.2: Codici di stato HTTP Codice Descrizione Nota 100 Continue Il client può continuare con la sua richiesta. 200 OK Risposta usuale per un file correttamente trasferito: la richiesta è stata accolta e il server risponde con i dati richiesti. 201 Created La richiesta è stata servita ed è stata creata una nuova risorsa. 202 Accepted La richiesta è stata accettata ma non ancora servita. 204 No Content Il server ha servito la richiesta, ma non è necessario l invio del corpo del messaggio. Quando il browser riceve questo codice, non ha bisogno di aggiornare il documento visualizzato. 300 Multiple Choices L URI richiesto corrisponde a più documenti (per esempio, un documento disponibile in più lingue). 301 Moved Permanently La risorsa richiesta è stata assegnata definitivamente ad un nuovo URI. 303 See Other La risorsa richiesta si trova in un altro URI specificato nello header Location. 304 Not Modified Il Client ha effettuato una richiesta GET condizionale usando lo header If-Modified-Since, e la risorsa non è stata ancora modificata, per cui il server non ha bisogno di spedirla. 400 Bad Request Richiesta non capita dal server a causa di un errore di sintassi. 401 Authorization Required Questo risultato è dato dallo header WWW- Authenticate per indicare che la risorsa richiede un autorizzazione che non è fornita nella richiesta. 403 Forbidden La richiesta è corretta ma il server si rifiuta di servirla; non dovrebbe essere quindi ripetuta. 404 Not Found Non esiste una risorsa corrispondente all URI richiesto. 405 Method Not Allowed Il metodo specificato nella richiesta non è disponibile per l URI indicato.
7 2.2 Il protocollo HTTP Request Timed Out 413 Request Entity Too Large 414 Request URI Too Long 500 Internal Server Error 501 Not Implemented 503 Service Unavailable 505 HTTP Version Not Supported Il client non ha fornito una richiesta nel tempo massimo di attesa del server. La richiesta è più grande di quel che il server può elaborare. L URI richiesto è troppo lungo per essere interpretato dal server. Il server è in una situazione inaspettata e non può rispondere alle richieste. Il server non è implementato per rispondere correttamente alla richiesta effettuata. Il server non può rispondere causa temporaneo sovraccarico. Il server non supporta la versione del protocollo HTTP utilizzata per fare la richiesta Le intestazioni Subito dopo la riga di testo contenente il metodo, richiesta e risposta HTTP usualmente presentano una serie di altre righe contenenti metadati riguardo il client, il server e/o la richiesta stessa. Ogni intestazione è costituita da una parola chiave, seguita dai due punti ed un valore che può anche essere piuttosto complesso. Ciò permette al server di riconoscere la capacità del client ed eventualmente di servirlo di conseguenza, ed al client di conoscere le caratteristiche della risposta ricevuta dal server. Per esempio, nella risposta HTTP appena vista, sono presenti due intestazioni relative alle caratteristiche del corpo della risposta: Content-Type, che dice che il file che segue è di tipo HTML, e Content-length, che ne specifica la lunghezza in byte. Il browser normalmente invia diversi metadati al server, descrivendo le sue capacità, come i tipi di file accettati, le lingue gestite, il tipo di browser ed il sistema operativo, la risoluzione dello schermo, ecc. Ecco una richiesta HTTP particolarmente (ma non esaustivamente!) completa: Listato 2.3: Una richiesta HTTP più completa 1 GET /dir1/dir2/file.html HTTP/1.1 2 Host: 3 Accept: text/xml,application/xml,application/(x)html+xml,text/ html,text/plain,image/png 4 Accept-language: it,en 5 Accept-charset: ISO User-agent: Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; it; rv: ) Gecko/ Firefox/ Referer: ie=utf-8
Introduzione. Java HTTP. G. Prencipe
Java html e http G. Prencipe prencipe@di.unipi.it Introduzione Tutte le comunicazioni tra client e server Web avvengono mediate il (HyperText Transfer Protocol, attualmente alla versione 1.1), che è un
DettagliParte II: Reti di calcolatori Lezione 7 (31)
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2017-18 Pietro Frasca Parte II: Reti di calcolatori Lezione 7 (31) Martedì 27-03-2018 1 Messaggio di
DettagliApplicazioni web. Sommario. Parte 4 http. http Metodi, intestazioni e codici di stato get post Parametri e cookie. Applicazioni web.
Parte 4 http Sommario http Metodi, intestazioni e codici di stato get post Parametri e cookie 1 Http Hyper Text Transfer Protocol Protocollo di livello applicazione per sistemi informativi distribuiti,
DettagliIl protocollo HTTP (cont.)
Il protocollo HTTP (cont.) Corso di Applicazioni Telematiche A.A. 2008-09 Lezione n.2 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria HTTP: Response La risposta
DettagliParte II: Reti di calcolatori Lezione 6 (30)
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Parte II: Reti di calcolatori Lezione 6 (30) Venerdì 24-03-2017 1 Messaggio di
DettagliTito Flagella - Il protocollo HTTP
Tito Flagella - tito@link.it Il protocollo HTTP Il protocollo HTTP È il protocollo standard tramite il quale i server Web rispondono alle richieste dei client (inizialmente i browser); È basato su un modello
Dettagli3.3.6 Gli operatori Le funzioni di accesso al tipo Le strutture di controllo Le funzioni
IIndice Capitolo 1 Da dove partiamo: pagine web statiche 1 1.1 Principi di base.............................. 1 1.1.1 Il paradigma client-server.................... 1 1.1.2 Ipertesto, multimedia, ipermedia................
DettagliProgrammazione in Rete
Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della
DettagliIl protocollo HTTP. Caratteristiche del protocollo HTTP. Versioni del protocollo. Due tipologie di messaggi:
Caratteristiche del protocollo HTTP Scambio di messaggi di richiesta e risposta Transazione HTTP o Web Protocollo stateless Il protocollo HTTP Basato sul meccanismo di naming degli URI per identificare
DettagliProgrammazione Web D B M G. Il linguaggio HTML
Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form HTML: HyperText Markup Language Standard
DettagliIL LIVELLO APPLICAZIONI WEB e HTTP
Parte II - Reti di Calcolatori ed Internet IL LIVELLO APPLICAZIONI WEB e HTTP 7-1 Applicazioni di Rete World Wide Web URL Web Client Web Server HTTP Futuro del Web 7-2 World Wide Web (WWW) Il World Wide
DettagliIl World Wide Web. Marco Porta - CIM: Web Design & Technologies
Il World Wide Web 1 Cos è il World Wide Web? Il Web è un sistema basato su Internet che utilizza la tecnologia degli ipertesti per distribuire documenti, immagini, video,... Il Web è un sottoinsieme di
DettagliD B M G Il linguaggio HTML
Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form @2011 Politecnico di Torino 1 Concetti
DettagliWEB: Architettura Client Server
Il WEB ed HTTP WEB: Architettura Client Server richiesta pagina client pagina server Prof. Carlo Blundo Tecnologie di Sviluppo per il WEB 2 Le Pagine Web Consistono di istruzioni (marcatori) HTML Memorizzate
DettagliIntroduzione alla programmazione Web
Introduzione alla programmazione Web Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Argomenti trattati Principi del web
DettagliIl Web come Interfaccia Utente di un Sistema Informativo
Web e basi di dati Il Web come Interfaccia Utente di un Sistema Informativo Occorre un meccanismo di interazione con il DBMS (attraverso il server Web) per la specifica di query e/o modifiche, es.. basate
DettagliIL LIVELLO APPLICAZIONI WEB e HTTP
Parte II - Reti di Calcolatori ed Internet IL LIVELLO APPLICAZIONI WEB e HTTP Applicazioni di Rete World Wide Web URL Web Client Web Server HTTP Futuro del Web 7-1 7-2 World Wide Web (WWW) Il World Wide
DettagliReti di Calcolatori. IL LIVELLO APPLICAZIONI WEB e HTTP
Reti di Calcolatori IL LIVELLO APPLICAZIONI WEB e HTTP D. Talia RETI DI CALCOLATORI - UNICAL 7-1 Applicazioni di Rete World Wide Web URL Web Client Web Server HTTP Futuro del Web D. Talia RETI DI CALCOLATORI
DettagliIL LIVELLO APPLICAZIONI WEB e HTTP
Reti di Calcolatori IL LIVELLO APPLICAZIONI WEB e HTTP D. Talia RETI DI CALCOLATORI - UNICAL 7-1 Applicazioni di Rete World Wide Web URL Web Client Web Server HTTP Futuro del Web D. Talia RETI DI CALCOLATORI
Dettagli@2011 Politecnico di Torino 1
Concetti di base Programmazione Web Il linguaggio HTML HTML consente di annotare un testo per contrassegnare le parti che lo compongono Le annotazioni sono realizzate tramite i "tag" Visualizzare documenti
DettagliIpertesto (testo + link a risorse)
Ipertesto (testo + link a risorse) testo a + dimensioni = che contiene informazioni di diverso "genere mediale" = indirizza a altri testi, immagini (statiche o mobili, ricevute tutte insieme o a lotti...),
DettagliProgrammazione Web D B M G. Il linguaggio HTML
Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form HTML: HyperText Markup Language Standard
DettagliD B M G. Basi di dati. Programmazione Web: HTML. Programmazione Web. Il linguaggio Politecnico di Torino 1
Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form @2011 Politecnico di Torino 1 Concetti
DettagliD B M G. Basi di dati. Programmazione Web: HTML. Programmazione Web. Il linguaggio Politecnico di Torino 1
Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form @2011 Politecnico di Torino 1 Concetti
Dettagli@2011 Politecnico di Torino 1
Il linguaggio HTML Programmazione Web Concetti di base Le interfacce utente in HTML I form Il passaggio dei parametri contenuti nei form Il linguaggio HTML Concetti di base Concetti di base HTML: HyperText
DettagliORGANIZZAZIONE DI SISTEMI OPERATIVI E RETI
ORGANIZZAZIONE DI SISTEMI OPERATIVI E RETI CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2006/2007 VERSIONE 1.0 L applicazione da sviluppare consiste in un server web concorrente
Dettagli@2011 Politecnico di Torino 1
Il linguaggio HTML Programmazione Web Concetti di base Le interfacce utente in HTML I form Il passaggio dei parametri contenuti nei form Il linguaggio HTML Concetti di base Concetti di base HTML: HyperText
DettagliIntroduzione: programmazione lato server e CGI
(PWLS: intro cap.2, 2.2, 2.3, 2.4) Introduzione: programmazione lato server e CGI Vincenzo Della Mea (vincenzo.dellamea@uniud.it) Ivan Scagnetto (ivan.scagnetto@uniud.it) Complementi di Tecnologie Web
DettagliLivello applicazione. Fondamenti di Informatica
Livello applicazione Fondamenti di Informatica Previously on Fondamenti di informatica Livello fisico Livello instradamento Network e Internetwork Protocollo IP Indirizzi IP Routing Client e server Server:
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Introduzione Architettura di Riferimento versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliIntroduzione a Internet e World Wide Web
Introduzione a Internet e World Wide Web Sommario Breve storia di Internet Commutazione di pacchetto e TCP/IP Il Web HTTP HTML CGI... Connessione tra basi di dati e Web Internetworking (collegamento fra
DettagliLato client: vuol dire che le operazioni programmate vengono svolte e visualizzate direttamente sul computer dell'utente collegato
Introduzione al linguaggio PHP Hypertext preprocessor Lato client: vuol dire che le operazioni programmate vengono svolte e visualizzate direttamente sul computer dell'utente collegato Lato server: vuol
DettagliSMTP. Introduzione. Scambio di messaggi asincrono
Scambio di messaggi asincrono SMTP Introduzione Basato su tecniche di store and forward Utilizza il protocollo SMTP (Simple Mail Transfer Protocol) e l'estensione MIME (Multipurpose Internet Mail Extension)
DettagliBasi di Dati-IX. Basi di dati e web. Introduzione. Schema. Basi di dati e web. Corso di Laurea in Informatica Anno Accademico 2013/2014
Schema 2 Basi di Dati-IX Corso di Laurea in Informatica Anno Accademico 2013/2014 Paolo Baldan baldan@math.unipd.it http://www.math.unipd.it/~baldan Basi di dati e web: nozioni generali Basi del linguaggio
DettagliTecnologie e applicazioni web Autenticazione
Tecnologie e applicazioni web Autenticazione Filippo Bergamasco ( filippo.bergamasco@unive.it) http://www.dais.unive.it/~bergamasco/ DAIS - Università Ca Foscari di Venezia Anno accademico: 2017/2018 Autenticazione
DettagliIntroduzione ad HTTP WWW. Fabio Vitali
Introduzione ad HTTP Introduzione Oggi esaminiamo in breve: HTTP (HyperText Transfer Protocol) Un protocollo stateless per la ricerca, il recupero e la manipolazione HTTP é un protocollo con la leggerezza
DettagliBasi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO
Basi di Dati Prof. Alfredo Cuzzocrea Università degli Studi di Trieste Basi di Dati e Web Credits to: Prof. M. Di Felice UniBO " Molti sistemi software prevedono la presenza di un database gestito da un
DettagliProva di laboratorio di reti di calcolatori
20 Aprile 2012, Lab. Turing Si progetti e si implementi un web server ed il corrispondente web browser che operano nel seguente modo: Il web browser apre una connessione TCP con il web server ed invia
DettagliAppunti di Sistemi A cura del prof. ing. Mario Catalano. Internet e il Web
Appunti di Sistemi A cura del prof. ing. Mario Catalano Internet e il Web 1 Internet Internet è un insieme di reti informatiche collegate tra loro in tutto il mondo. Tramite una connessione a Internet
DettagliFondamenti di Internet e Reti
sul Livello Applicativo 1. o HTTP (basi) Di seguito è riportato il contenuto (in codifica testuale ASCII) di una richiesta HTTP. Rispondere alle domande seguenti indicando dove trovate la risposta nella
DettagliMetodologie Informatiche Applicate al Turismo
Metodologie Informatiche Applicate al Turismo 6. - Protocolli a livello applicazione Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it Corso
DettagliIl Protocollo HTTP e la programmazione di estensioni Web
Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);
DettagliApplicazioni e protocolli a livello applicazione
Applicazioni e protocolli a livello applicazione Applicazione: processi distribuiti comunicanti vengono eseguiti sugli host di rete come processi utente scambio di messaggi per implementare l applicazione
DettagliIntroduzione alle Architetture di Rete
Introduzione alle Architetture di Rete Un po di storia TCP/IP nato negli anni 60 Rete di backup Internet Basi di Dati 2 1 Pila ISO/OSI Standardizzazione Nata nei primi anni 80 E un modello da seguire Basi
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Introduzione Il Protocollo HTTP versione 2.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it
DettagliD - ESERCIZI: Protocolli applicativi ed altro:
Università di Bergamo Dipartimento di Ingegneria dell Informazione e Metodi Matematici D - ESERCIZI: Protocolli applicativi ed altro: F. Martignon Architetture e Protocolli per Internet 1 Esercizio d.1
DettagliProtocollo HTTP. Alessandro Sorato
Un protocollo è un insieme di regole che permettono di trovare uno standard di comunicazione tra diversi computer attraverso la rete. Quando due o più computer comunicano tra di loro si scambiano una serie
DettagliParte II: Reti di calcolatori Lezione 6 (30)
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2018-2019 Pietro Frasca Parte II: Reti di calcolatori Lezione 6 (30) Giovedì 21-03-2019 1 Servizi forniti
Dettagli04/04/2016 MANUALE DI ISTRUZIONI DELL APPLICAZIONE ENTRATEL-MULTIFILE VERSIONE 1.0.0
04/04/2016 MANUALE DI ISTRUZIONI DELL APPLICAZIONE ENTRATEL-MULTIFILE VERSIONE 1.0.0 PAG. 2 DI 24 INDICE 1. PREMESSA 3 2. INSTALLAZIONE 4 3. STRUTTURA DELLE CARTELLE 8 4. CONFIGURAZIONE DELL APPLICAZIONE
DettagliLezione 6. Siti, Utenti e Sessioni
Lezione 6 Siti, Utenti e Sessioni Classificazione dei siti Siti statici Sono siti con contenuti che variano poco frequentemente Dal punto di vista tecnologico sono costituiti da pagine html Siti dinamici
DettagliORGANIZZAZIONE DI SISTEMI OPERATIVI E RETI
ORGANIZZAZIONE DI SISTEMI OPERATIVI E RETI CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2007/2008 VERSIONE 1.0 Il progetto consiste nello sviluppo di un applicazione client/server.
DettagliI a Prova in Itinere di Telematica di Base 24 marzo 2006
Cognome e Nome: Matricola: I a Prova in Itinere di Telematica di Base 24 marzo 2006 1. Un pacchetto di 20M deve attraversare un collegamento tra due nodi la cui frequenza di trasmissione e di 200Mbs. Il
DettagliProgettazione Siti Web: Web
Progettazione Siti Web: Web Dr. Ing. Information Management Systems (IMS) Research Group, Dipartimento di Ingegneria dell Informazione, Università degli Studi di Padova {silvello}@dei.unipd.it Corso di
DettagliIl protocollo HTTP e HTTPS
Il protocollo HTTP e HTTPS Guida Apache di Openskills Introduzione al protocollo HTTP Il protocollo HTTP (Hyper Text Transfer Protocol) viene usato da tutti i client e server web e gestisce il modo con
DettagliJavascript e CSS nelle pagine WEB
1 Javascript e CSS nelle pagine WEB Esempi applicativi Autrice: Turso Antonella Carmen INDICE ARGOMENTI 2... 5 LEZIONE 1... 6 COSA SONO I JAVASCRIPT... 6 LEZIONE 2... 8 STRUTTURA DEL LINGUAGGIO JAVASCRIPT
DettagliCorso di Reti di Calcolatori T
Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 5 (proposta) Focalizzazione conoscenze acquisite Luca Foschini Anno accademico 2013/2014 Esercitazione
DettagliStack protocolli TCP/IP
Stack protocolli TCP/IP Application Layer Transport Layer Internet Layer Host-to-Nework Layer DNS SMTP Telnet HTTP TCP UDP IP Insieme di eterogenei sistemi di rete... 1 Concetti base Differenza tra i concetti
DettagliLezione 3 Progettazione di siti
Lezione 3 Progettazione di siti Ingegneria dei Processi Aziendali Modulo 1 Servizi Web Unità didattica 1 Protocolli Web Ernesto Damiani Università di Milano Elementi base della progettazione di servizi
DettagliLaboratorio di Reti, Corsi A e B. Text-Twist. Progetto di Fine Corso A.A. 2016/17
Laboratorio di Reti, Corsi A e B Text-Twist Progetto di Fine Corso A.A. 2016/17 1.Descrizione del problema Il progetto consiste nello sviluppo di un gioco multiplayer online. All inizio di una partita
DettagliProva di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00
Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:
DettagliTecnologie di Sviluppo per il Web
Tecnologie di Sviluppo per il Web Il Protocollo HTTP versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina) G. Mecca mecca@unibas.it Università
DettagliIl linguaggio PHP. Insegnarvi tutto il PHP? Non esattamente Obiettivo: insegnarvi ad interagire via web con una base dati
Programmazione Web Il linguaggio PHP Il nostro obiettivo Insegnarvi tutto il PHP? Non esattamente Obiettivo: insegnarvi ad interagire via web con una base dati Accedere ai dati inseriti dall utente nei
DettagliIl Web. Struttura e servizi
Il Web Struttura e servizi Ipertesto ed ipermedia Un ipertesto è un testo la cui struttura è reticolare, invece che semplicemente lineare o gerarchica. Si parla di multimedialità quando un testo è formato
DettagliStrumenti per l automazione del testing di applicazioni web Javascript-based
tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612
DettagliSistema di Teleraccolta EMITTENTI
Sistema di Teleraccolta EMITTENTI Manuale Utente Storia delle modifiche Data Versione Tipo di modifica 20/10/2004 1.0 Creazione del documento 2 Indice dei contenuti 1 Introduzione... 4 2 Accesso/Uscita
DettagliCLIENT WEB. Strumento di interfaccia tra l utente ed il sistema Web (browser).
CLIENT WEB Strumento di interfaccia tra l utente ed il sistema Web (browser). Funzioni svolte: Riceve ed esegue i comandi dell utente Richiede ad un server (web server) i documenti Interpreta i formati
DettagliInternet Architettura del www
Internet Architettura del www Internet è una rete di computer. Il World Wide Web è l insieme di servizi che si basa sull architettura di internet. In una rete, ogni nodo (detto host) è connesso a tutti
Dettagliurl uniform resource locator
url uniform resource locator m. patrignani nota di copyright questo insieme di slides è protetto dalle leggi sul copyright il titolo ed il copyright relativi alle slides (inclusi, ma non limitatamente,
DettagliCorso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Laurea Specialistica in Ingegneria delle Telecomunicazioni Corso di Applicazioni Telematiche (a.a. 2009/2010) Protocollo HTTP Simon Pietro
DettagliTecnologia dell Informazione
Tecnologia dell Informazione Il Sistema Operativo Windows Materiale Didattico a cura di Marco Musolesi Università degli Studi di Bologna Sede di Ravenna Facoltà di Giurisprudenza Corso di Laurea in Operatore
DettagliParte II.4 World Wide Web
Parte II.4 World Wide Web Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 1, 2015 Argomenti World Wide Web URL Pagine Web World Wide
DettagliInformatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 8 novembre Corso di laurea in Economia
Informatica Dipartimento di Economia Ing. Cristiano Gregnanin Corso di laurea in Economia 8 novembre 2016 1 / 28 Rete informatica La rete informatica è la condivisione d informazioni o servizi. un computer
DettagliIntroduzione a Java Server Pages (JSP) (estratto) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi
Introduzione a Java Server Pages (JSP) (estratto) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi 1 JSP (Java Server Pages) È la tecnologia Java per lo sviluppo di applicazioni
DettagliITI M. FARADAY. Programmazione a. s
ITI M. FARADAY Programmazione a. s. 2018-2019 Disciplina: INFORMATICA Indirizzo: INFORMATICA E TELECOMUNICAZIONI Classi: Quinta A Quinta B Ore settimanali previste: 6 (3 ora Teoria - 3 ore Laboratorio)
DettagliWorld Wide Web (WWW o Web)
RETI DI CALCOLATORI Il livello applicazioni: Il WEB: HTTP, HTML Carlo Mastroianni World Wide Web (WWW o Web) Il World Wide Web è una architettura software per l accesso ai documenti pubblicati sui vari
DettagliDopo aver installato WAMP (o XAMPP) e verificato che i servizi siano funzionanti, si può procedere ad installare ARTISWEB, come appresso descritto.
Procedura di installazione artisweb Preparazione dell ambiente ARTISWEB può girare su qualsiasi piattaforma che fornisca i seguenti servizi: - un server web locale (ad esempio: Apache ver.2.2 o successive,
DettagliLuca Tesei. Laboratorio di Sviluppo Web: Le Basi. Modulo IFTS. Fermo 31/03, 03/04, 07/ Prof. Luca Tesei Università di Camerino 1
Luca Tesei Laboratorio di Sviluppo Web: Le Basi Modulo IFTS Fermo 31/03, 03/04, 07/04 2017 Prof. Luca Tesei Università di Camerino 1 Informazioni di Contatto Email docente: luca.tesei@unicam.it Telefono:
DettagliFondamenti di Internet e Reti
1. sul Livello Applicativo 1. o HTTP (basi) Di seguito è riportato il contenuto (in codifica testuale ASCII) di una richiesta HTTP. Rispondere alle domande seguenti indicando dove trovate la risposta nella
DettagliSMS Gateway - Specifiche WS. Specifica Tecnica
Specifica Tecnica Revisione Data Elaborato da Verificato da Note 1 21/02/13 Stefano Peruzzi Gianni Antini Mod. ST-rev002_2013-02-21 Pag. 1/11 Indice 1 Oggetto...3 2 Scopo del documento...3 3 Riferimenti...3
DettagliLaboratorio di Progettazione Web Applicazioni Web
Laboratorio di Progettazione Web Applicazioni Web AA 2010/2011 Claudio Lucchese ISTI - CNR claudio.lucchese@isti.cnr.it Per sviluppare una applicazione web occorre aggiungere potere di calcolo e memorizzazione
DettagliWeb e HTTP. path name. host name Realizzato da Roberto Savino. www.someschool.edu/somedept/pic.gif
Web e HTTP Terminologia Una pagina web consiste di oggetti Un oggetto può essere un file HTML, una immagine JPG, ecc. Una pagina web consiste di un file HTML base che fa riferimento a diversi oggetti al
DettagliArchitettura dell Informazione
Architettura dell Informazione 6. - Protocolli a livello applicazione nel WWW Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it Master in
DettagliApplicazioni di rete 1
Applicazioni di rete 1 PROTOCOLLO TCP Proprietà: - verifica che i dati siano arrivati ed automaticamente provvede in caso negativo alla loro ritrasmissione - esegue checksum sui dati per garantire che
DettagliModulo o Form in Html
Pagina dinamica E un documento contenente oggetti, dati e informazioni che possono variare anche in base all iterazione dell utente con il documento stesso. Un esempio classico è quello di una persona
DettagliUso di Internet: Esempio. Prof. Franco Callegati
Uso di Internet: Esempio Prof. Franco Callegati http://deisnet.deis.unibo.it Consultazione di una pagina WEB Per collegarsi a Internet un Utente apre il proprio Browser Web (B) Dal Sistema Operativo (Es:
DettagliIndice generale. Introduzione...xiii. Uno sguardo più da vicino a JavaScript...17
Indice generale Introduzione...xiii Perché Node.js?... xiii Il Web... xiii Nuove tecnologie...xiv Cos è esattamente Node.js?...xiv A chi si rivolge questo libro?...xvi Come usare questo libro...xvi Scaricate
DettagliTECN.PROG.SIST.INF. I Socket Roberta Gerboni
2015 - Roberta Gerboni Socket e porte I sistemi operativi multitasking possono fare girare contemporaneamente più processi dove ogni processo può rendere disponibili anche più servizi. Questi devono essere
DettagliComplementi di Tecnologie Web
Complementi di Tecnologie Web Gli argomenti trattati nel corso sono divisi in due moduli: Tecnologie web lato server Docenti: Vincenzo Della Mea, Ivan Scagnetto Tecnologie XML Docente: Massimo Franceschet
DettagliProcedura di installazione rrunnweb
Procedura di installazione rrunnweb Preparazione dell ambiente RRUNNWEB può girare su qualsiasi piattaforma che fornisca i seguenti servizi: - un server web locale (ad esempio: Apache ver.2.2 o successive,
DettagliACCESSO ALLA POSTA ELETTRONICA TRAMITE OUTLOOK WEB ACCESS
ACCESSO ALLA POSTA ELETTRONICA TRAMITE OUTLOOK WEB ACCESS Versione 1.2 9 Luglio 2007 Pagina 1 di 16 SOMMARIO 1. Cos è Outlook Web Access... 3 2. Quando si usa... 3 3. Prerequisiti per l uso di Outlook
DettagliIntroduzione alle JSP
Introduzione alle JSP Corso di Sistemi Web e Basi Dati Prof. Antonio d Acierno Java Server Page JSP Riferimenti http://java.sun.com/products/jsp http://www.coreservlets.com http://www.html.it/jsp Le JSPs
DettagliEsercizio 1 : HTTP. Soluzione Esercizio 1 : HTTP
Esercizio 1 : HTTP In the following you can find the content of an HTTP Request. Answer to the following questions, indicating where (e.g., in which field) in the HTTP Request you can find the answer:
DettagliCitiemme esec. Citiemme Informatica SRL esec v2.1. Citiemme esec
Cos è CITIEMME esec: è un sistema configurabile per la gestione dei documenti aziendali; sviluppato con tecnologia IBM Lotus Notes, interagisce con sistemi gestionali esterni (ad es. IBM ACG StampeDiQualità,
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 10 Architettura Model-View-Controller (MVC) L'architettura MVC può essere applicata anche alla tecnologia PHP secondo diversi approcci. In questa
DettagliSicurezza delle applicazioni web: protocollo HTTP
Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Anno Accademico 2009/2010 Sicurezza delle applicazioni web: protocollo HTTP Roberto Paleari roberto@security.dico.unimi.it
DettagliProf. Pagani Corrado HTML
Prof. Pagani Corrado HTML IPERTESTI E MULTIMEDIALITÀ Un ipertesto è un insieme di documenti messi in relazione tra loro per mezzo di parole chiave sensibili (link). Può essere visto come una rete; i documenti
DettagliHTML. Es: La prossima parola è in <b>neretto</b> Es: La prossima parola è in neretto
HTML Il linguaggio HTML (HyperText Markup Language) utilizza annotazioni (tag) per descrivere come verrà visualizzato il documento sul browser di un client. L HTML non è un linguaggio di programmazione
DettagliServizi di interscambio dati e cooperazione applicativa Guida alla gestione dei servizi web Mipaaf
Servizi di interscambio dati e cooperazione applicativa Indice 1 Introduzione... 3 2 Accesso ai servizi... 4 2.1 La richiesta di convenzione... 4 2.2 Le credenziali di accesso al sistema... 5 2.3 Impostazione
Dettagli