CGI: Common Gateway Interface

   Un Client può accedere ad una pagina HTML comunicando al Server il nome della pagina che desidera. Quando il Client esegue un GET su quell'indirizzo il Server legge il file e lo rimanda al Client. Tuttavia c'è un altro modo per ottenere informazioni dal Server: quello di chiedere al Server stesso di lanciare una applicazione particolare (chiamata Common Gateway), e di rimandare al Client il risultato della computazione (una pagina HTML composta dinamicamente dal programma).
Come fa il Server, una volta ricevuto un GET su un file, a capire se deve rimandare il file al Client, o se deve "lanciare" il file e mandare al Client solamente l'output? Il sistema è semplice e drastico: tutti i file che stanno sotto un opportuna directory (generalmente /cgi-bin/) devono essere lanciati, gli altri devono essere inoltrati così come sono.
La facoltà di ottenere dal Server l'ouput di un programma piuttosto che un file predefinito consente in un certo qual modo la confezione di pagine che siano su misura per il Client, e non le stesse pagine sempre e comunque per tutti. Si parla, in questo caso, di pagine generate dinamicamente, rispetto alle usuali pagine statiche.
E' evidente dunque l'utilità di poter passare al programma dei parametri. Come si vede in figura ciò è possibile specificando i parametri in coda all'indirizzo del programma, preceduti da un punto interrogativo e separati dal segno "+".

pagina precedente    prossima pagina