Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGianfranco Cappelletti Modificato 11 anni fa
1
10110 01100 01100 01011 01011 Reti di Calcolatori IL LIVELLO APPLICAZIONI WEB e HTTP
2
10110 01100 01100 01011 01011 Applicazioni di Rete World Wide Web URL Web Client Web Server HTTP Futuro del Web
3
10110 01100 01100 01011 01011 World Wide Web (WWW) Il World Wide Web è una architettura software per laccesso a documenti distribuiti su Internet e collegati tra loro. Ragnatela mondiale di documenti organizzati secondo un modello ipertestuale. Concetti di base: Internet, ipertesti, multimedialità.
4
10110 01100 01100 01011 01011 World Wide Web (WWW) Nato nel 1989 al CERN di Ginevra come mezzo per scambiare informazioni. Nel 1994 è stato fondato il W3C - Consorzio World Wide Web (www.w3c.org). La prima interfaccia grafica è stata Mosaic.
5
10110 01100 01100 01011 01011 Organizzazione di un testo lettura sequenziale pag 1 pag 2 pag 3 pag 4 pag 7 pag 5 pag 6
6
10110 01100 01100 01011 01011 Organizzazione di un ipertesto nodo (pagina) link ancora
7
10110 01100 01100 01011 01011 Terminologia per gli Ipertesti sul Web Browser: programma applicativo per navigare in rete. Page (pagina): singolo foglio di un ipertesto. Home-page: punto di ingresso di un sito web. Link, iperlink: porzione di una pagina che, se selezionata, permette di raggiungere un altro punto dellipertesto o una nuova risorsa.
8
10110 01100 01100 01011 01011 HTML Gli ipertesti del Web sono scritti usando il linguaggio HyperText Markup Language (HTML). HTML non è un linguaggio di programmazione! HTML descrive la disposizione di tutti gli elementi presenti allinterno di un documento ipertestuale. Include documenti in altri formati.
9
10110 01100 01100 01011 01011 HTML Alcuni pattern (comandi) HTML
10
10110 01100 01100 01011 01011 Grazie al Web si possono condividere delle informazioni ma anche eseguire applicazioni. E possibile creare dei meccanismi di comunicazione interattiva mediante luso del linguaggio HTML opportunamente combinato con altri linguaggi di programmazione: Java, PHP, Javascript, Perl. HTML
11
10110 01100 01100 01011 01011 Web: Modello Client-Server Il Web usa il modello client-server per lo scambio delle informazioni. Il client, è realizzato dal browser che gira sullelaboratore dellutente. Il server, è un programma applicativo che gira sullelaboratore del fornitore di informazioni (provider).
12
10110 01100 01100 01011 01011 server client server client server Web Client-Server LAN 1 LAN 2 Ogni volta che si usano indirizzi simbolici cè di mezzo il DNS
13
10110 01100 01100 01011 01011 Gli indirizzi per trovare i documenti nel Web sono detti Uniform Resource Locator (URL) e identificano in modo univoco i nodi (i documenti). protocollo://indirizzodelserver[:portaTCP]/pathname Uniform Resource Locator http:// www.deis.unical.it/index.html è lindirizzo della home-page del DEIS.
14
10110 01100 01100 01011 01011 Browser Web Aperto ad altri Protocolli Molti browser web sono in grado di gestire diversi protocolli definiti negli URL. httpHTTPhttp://www.deis.unical.it/index.html ftpFTPftp://ftp.lcs.mit.edu/pub/README filefile localeC:\doc\lezione-reti.ppt newsgruppo newsnews:comp.os.linux newsarticolo newsnews:00165672@cs.berkeley.edu mailtoinvio emailmailto:folino@icar.cnr.it telnetlogin remototelnet://si.deis.unical.it
15
10110 01100 01100 01011 01011 Web Servers
16
10110 01100 01100 01011 01011 Web Servers e Download di Pagine Web Il browser controlla e determina lURL, (es. www.w3c.org), Il browser chiede al DNS lindirizzo IP del sito richiesto, Il DNS risponde 18.23.0.23, Il browser crea una connessione TCP sulla porta 80 della macchina 18.23.0.23, Il browser invia il comando GET /hypertext/WWW/TheProject.html HTTP/1.0 Il server invia il file TheProject.html, Viene chiusa la connessione TCP, Il browser visualizza il testo del file e quindi le immagini contenute in esso.
17
10110 01100 01100 01011 01011 Protocollo HTTP La comunicazione tra client e server Web avviene seguendo il protocollo HTTP. Hyper Text Transmission Protocol (HTTP) introdotto per trasmettere documenti ipertestuali / ipermediali sulla rete. Il protocollo definisce linterazione (richieste e risposte) tra client e server Web. Le richieste HTTP sono in formato ASCII e le risposte in formato MIME.
18
10110 01100 01100 01011 01011 Protocollo HTTP Ogni sito Web ha un processo server in ascolto su una porta TCP. La porta standard è la numero 80 ma può essere usata una porta con numero diverso (es. 443 per la versione sicura HTTPS). Questo permette di avere più server Web su una stessa macchina. Il protocollo è senza stato (non cè memoria delle transazioni).
19
10110 01100 01100 01011 01011 Richieste HTTP La linea iniziale di una richiesta è formata da 3 parti GET /index.html HTTP/1.0 Host: Host: haldo.deis.unical.it User-Agent: User-Agent: Mozilla/4.0 (Windows; U; WinXP; en-US; m18) Gecko/20010131 Netscape6/6.01 Accept: Accept: */* Accept-Language: Accept-Language: en Accept-Encoding: Accept-Encoding: gzip,deflate,compress,identity Keep-Alive: Keep-Alive: 200 Connection: Connection: keep-alive Esempio di richiesta n Metodo n Percorso locale della risorsa richiesta n Versione di HTTP usata Linea Iniziale Header
20
10110 01100 01100 01011 01011 Metodi HTTP I metodi HTTP definiscono le operazioni possibili su una risorsa n GET chiede la lettura di una risorsa Web. Se è seguita dallintestazione If- Modified-Since il server invia i dati solo se sono stati modificati dopo la data specificata (gestione cache del browser). n HEAD Richiede solo le intestazioni relative alla risorsa. Serve per verificare le caratteristiche della risorsa senza trasferirla. n POST Utilizzato per inviare dati da elaborare al server. Lintestazione è seguita da un corpo della richiesta che contiene i dati. n Altri metodi : PUT, DELETE, LINK e UNLINK. Occorre avere i permessi
21
10110 01100 01100 01011 01011 Risposta HTTP La linea iniziale di una risposta contiene informazione di stato. Segue lheader e la risorsa Web in formato HTML. HTTP/1.1 200 OK Date: Wed, 06 Nov 2002 18:45:22 GMT Server: Apache/1.5.10 (Win32) Last-Modified: Wed, 06 Nov 2002 18:40:50 GMT ETag: "0-64-3b1eaf7a" Accept-Ranges: bytes Content-Length: 100 Connection: close Content-Type: text/html Sito Web di Topolino Informazioni principali …… header risorsa Linea vuota
22
10110 01100 01100 01011 01011 Intestazioni Seguono il formato specificato in RFC 822 anche per le e-mail HTTP 1.0 definisce 16 header (tutti opzionali) ) HTTP 1.1 definisce 46 header (obbligatorio Host :) Alcuni esempi : User-Agent: Identifica il programma client che effettua la richiesta. Individua clients, spiders, ecc.. Server: Identifica il server. Last-Modified: Indica la data di modifica della risorsa. E usata per gestire le cache. Content-Type: Tipo MIME del corpo del messaggio. Content-Length: Lunghezza in byte del corpo del messaggio.
23
10110 01100 01100 01011 01011 Proxy HTTP Un proxy HTTP agisce da intermediario fra il client e il server n Riceve le richieste dal client, n Propaga la richiesta al server corretto, n Gestisce protocolli diversi da HTTP. Sono usati su LAN per caching o accesso ad Internet tramite firewall per controllare gli accessi alla rete. Proxy FTP Server FTP Risposta HTTP Richiesta HTTP Risposta FTP Richiesta FTP
24
10110 01100 01100 01011 01011 HTTP 1.1 Permette più transazioni su una stessa connessione persistente. n Le richieste sono inviate in pipelining e si ricevono le risposte nello stesso ordine. Risposta più veloce per pagine generate dinamicamente utilizzando la codifica chunked. n Non si deve specificare la lunghezza del messaggio nellintestazione, n Il messaggio è scomposto in blocchi (chunks).
25
10110 01100 01100 01011 01011 HTTP 1.1 Ha introdotto il supporto per le cache (If- Modified-Since:) Uso migliore degli indirizzi IP permettendo di ospitare più siti virtuali su uno stesso server con un solo IP n Uso dellintestazione Host: -> specifica il nome del sito a cui è indirizzata la richiesta.
26
10110 01100 01100 01011 01011 Multi-Homed IP Un server allo stesso indirizzo IP può gestire più domini. Richiede lutilizzo di alias nel DNS. DNS Server Web unico www.x2.org www.x1.org 118.23.12.1
27
10110 01100 01100 01011 01011 Web Server Multi-thread Un Web server efficiente può gestire le chiamate tramite un insieme di thread che gestiscono le diverse richieste dei client.
28
10110 01100 01100 01011 01011 Presente e Futuro del Web Pagine Dinamiche (JSP,ASP,PHP); Extended Markup Languge (XML); Web Services.
29
10110 01100 01100 01011 01011 XML Semplice esempio di documento XML
30
10110 01100 01100 01011 01011 Riferimenti HTTP: http://www.w3.org/Protocols/ HTML: http://www.w3.org/MarkUp/ XML: http://www.w3.org/XML/ Web Services: http://www.w3.org/2002/ws/
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.