Slide 1

Slide 1 text

HTTP e pagine web Il protocollo HTTP e la visualizzazione delle pagine web Edoardo Tenani @edoardotenani about.me/edoardo.tenani 24/10/2013 Programmare è Design

Slide 2

Slide 2 text

HTTP

Slide 3

Slide 3 text

Richiesta La visualizzazione di una pagina web è il risultato dell'interazione tra un client ( il browser sul vostro computer ) e un server, detentore del contenuto da visualizzare. Per visualizzare una pagina: ● il client fa una richiesta ad un server ● il server controlla la richiesta e elabora una risposta, inviandola al client ● il client visualizza una risposta

Slide 4

Slide 4 text

Richiesta, nel dettaglio 1. Richiesta URL ( Uniform Resource Locator ) : www. google.it Le "macchine" non hanno idea di cosa sia un URL. Per comunicare utilizzano gli l'Internet Protocol ( IP ) 2. Richiesta DNS. Risposta IP: 173.194.116.55 3. Richiesta a 173.194.116.55 della pagina web www. google.it. Il server cerca tra i suoi dati il dato richiesto e risponde. In questo caso risponderà con una pagina HTML.

Slide 5

Slide 5 text

Richiesta, nel dettaglio

Slide 6

Slide 6 text

Richiesta, nel dettaglio

Slide 7

Slide 7 text

Richiesta, nel dettaglio

Slide 8

Slide 8 text

Richiesta, nel completo Una pagina web corrisponde ad una richiesta? ^^ Magari… Una pagina web composta da HTML, CSS, immagini, contenuti aggiunti dinamicamente fa molte, molte, più richieste, per ciascun utente. Questo comporta ovvi problemi di performance generali ( esempio Google o Facebook ).

Slide 9

Slide 9 text

HTTP????

Slide 10

Slide 10 text

HTTP???? Senza addentrarci nei dettagli, l'HTTP è uno dei protocolli del web, forse il più comune ma sicuramente non l'unico. Esempi? HTTPS, IMAP, POP Ciascun protocollo utilizza una porta di comunicazione diversa: HTTP 80, HTTPS 443, IMAP 143, POP 995 Si possono usare servizi su altre porte, ma non è consigliato. Tutti questi protocolli vengono gestiti da web servers.

Slide 11

Slide 11 text

HTTP???? Qualcosa di più esaustivo? https://it.wikipedia. org/wiki/Lista_di_porte_standard

Slide 12

Slide 12 text

Installiamo il nostro webserver http://www.apachefriends.org/en/xampp.html X ⇒ Crossplatform | Linux, Mac OS, Windows A ⇒ Apache | il web server M ⇒ MySQL | database P ⇒ PHP | linguaggio lato server P ⇒ Perl | linguaggio lato server

Slide 13

Slide 13 text

Grazie! Questions?