Sistemi di elaborazione dell’informazione Modulo 3 -Protocolli applicativi Unità didattica 4 - Protocolli del Web Ernesto Damiani Lezione 3 – Esempi HTTP
Se il file non viene trovato, la risposta include il codice d’errore 404 e la pagina d’errore generica File non trovato bash-2.05b$ telnet 80 Trying Connected to Escape character is '^]'. GET /~avf/foo.html HTTP/1.1 Host: HTTP/ Not Found Date: Tue, 06 Jan :40:52 GMT Server: HP Apache-based Web Server/ (Unix) mod_perl/1.27 PHP/4.2.2 Transfer-Encoding: chunked Content-Type: text/html a5 404 Not Found Page Not Found The requested URL /~avf/foo.html was not found on this server. 0 Connection closed by foreign host.
Richieste non standard Il protocollo HTTP comprende un gran numero di tipi di richieste e di possibili risposte. Non tutte le richieste causano un trasferimento di dati. –In alcuni casi si tratta di informazioni sul server. Esaminiamo alcuni esempi.
bash-2.05b$ telnet 80 Trying Connected to Escape character is '^]'. GET /~avf/index.html HTTP/1.1 Host: Se è specificata una directory, il server vi cercherà un file denominato index.html HTTP/ OK Date: Tue, 06 Jan :45:09 GMT Server: HP Apache-based Web Server/ (Unix) mod_perl/1.27 PHP/4.2.2 Last-Modified: Tue, 30 Dec :37:03 GMT ETag: "10b3e ef" Accept-Ranges: bytes Content-Length: 4096 Content-Type: text/html … Homepage … Connection closed by foreign host. URI relative a directory
Reindirizzamento bash-2.05b$ telnet 80 Trying Connected to Escape character is '^]'. GET /~avf HTTP/1.1 Host: Poiché all’URI manca / alla fine, il browser deve fare 2 richieste HTTP/ Moved Permanently Date: Tue, 06 Jan :49:15 GMT Server: HP Apache-based Web Server/ (Unix) mod_perl/1.27 PHP/4.2.2 Location: /~avf/ Transfer-Encoding: chunked Content-Type: text/html; charset=iso Moved Permanently Moved Permanently The document has moved here. HP Apache-based Web Server/ Server at Port 80 0 Connection closed by foreign host.
Campi dell’header di richiesta FINE Il client può specificare ulteriori informazioni nella richiesta. User-Agent Indica la versione del browser. Referer Comunica al server da dove proviene l’utente (utile per eseguire il log e per tenere traccia dell’utente). From Contiene l’indirizzo dell’utente (generalmente non usato per motivi di privacy). Authorization Può inviare il nome utente e la password (usato con documenti che richiedono l’autorizzazione). If-Modified-Since Invia il documento solo se è più recente della data specificata (usato per memorizzare nella cache).