HTTP
|
|
(protocollo di trasferimento di
ipertesti) |
HTTP (Hypertext Transfer Protocol) è il protocollo di rete
standard del Web. HTTP viene usato per richiede e consegnare una
risorsa attraverso il World Wide Web. Una risorsa è un
termine più generale di un file: può essere un file (ad es. un file
HTML o un file immagine), ma anche il risultato di una query
generata dinamicamente tramite uno script elaborato sul server o
altro.
Uno script server-side che fornisce per output un documento
visibile via web viene detto (script) CGI (Common Gateway
Interface) dal nome dell'interfaccia programmativa usata tra lo
script e il web server per comunicare tra loro.
Ogni risorsa è identificata da un URL (Uniform Resource
Locator).
Alcuni dei principali tool che implementano le varie parti di
HTTP sono:
- web server o HTTP server (es. Apache)
- web browser o HTTP client (es. Mozilla)
- web robot o spider (es. Wget)
- link-checkers (es. Checkbot)
Un browser viene detto anche client HTTP perché apre una
connessione al server HTTP (detto anche web server) e gli manda un
messaggio di richiesta e quest'ultimo risponde con un messaggio di
risposta contenente di solito la risorsa richiesta. Dopo aver
consegnato la risposta il server chiude la connessione e con questo
termina la transazione HTTP. Perciò HTTP è un protocollo di tipo
client-server e stateless, cioé i soggetti della
comunicazione hanno i ruoli ben definiti di cliente o servitore e
ogni transazione è nuova e indipendente dalle altre.
HTTP è composto da direttive espresse in lingua inglese e
leggibili dall'uomo oltre che dalle macchine. Può quindi essere
usato anche manualmente.
Di solito HTTP usa i socket TCP/IP per il trasporto dei messaggi
e la porta standard su cui il server HTTP si mette in ascolto è la
numero 80, tuttavia HTTP è indipendente dai dettagli del protocollo
di transporto.
Ora descriveremo gli aspetti fondamentali della prima versione
di HTTP: HTTP 1.0. La versione 1.0 del protocollo è completamente
descritta nella RFC 1945: http://www.ics.uci.edu/pub/ietf/http/rfc1945.html
|