Ora facciamo due esperimenti:
Esperimento1) dal client, imponiamo
al server il passaggio di parametri ad un gateway program sulla linea di
comando;
Esperimento 2) ci sostituiamo
al server e lanciamo lo stesso programma, passandogli i parametri sulla
linea di comando noi stessi per vedere cosa succede, e cosa il gateway
program risponderebbe al server.
Il gateway che useremo in questo
esperimento è un programma dal nome "calendar"
che si trova nella directory cgi-bin di quasi tutti i server www. Questo
gateway richiede i parametri sulla linea di comando. Se digitiamo sulla
linea in cui si specifica l'URL di un client www la stringa "www.inf.uniroma3.it/cgi-bin/calendar?11+1997",
il risultato è quello che si vede in figura: nella finestra del
client apparirà la pagina del calendario relativo al mese e all'anno
inseriti.
Ora accediamo al sistema UNIX,
ci spostiamo nella directory opportuna che contiene i gateway (che per
il nostro server è la directory ~www/httpd/cgi-bin),
ed eseguiamo il comando "calendar
11 1997". L'esito è
il seguente:
<patrigna@pascal ~www/httpd/cgi-bin>calendar
11 1997
Content-type: text/html
<PRE>
November
1997
Sun Mon Tue Wed Thu Fri Sat
1
2 3 4
5 6 7 8
9 10 11 12
13 14 15
16 17 18 19 20
21 22
23 24 25 26 27
28 29
30
</PRE>
</BODY></HTML>
<patrigna@pascal ~www/httpd/cgi-bin> |
Come si vede l'utput del gateway
è la pagina html che si vede dal client. Essa è preceduta
da una riga "Content-type: text/html",
che è destinata ad essere inclusa dal server nell'header del messaggio
http destinato al client. Segue la pagina html in questione, che sarà
completata dal server aggiungendo in testa l'header. I marcatori <PRE>
e </PRE> delimitano
una zona "preformattata", in cui cioè gli spazi e gli accapo vanno
conservati così come sono (nel linguaggio html andrebbero persi).
pagina precedente
prossima pagina