Leandro

Da ingegnere

Bioingegneria

Programmazione

Curriculum

Passioni

home page

Links

leandro@pecchia.net

Common Gateway Interface

Al fine di svolgere dei compiti e generare una risposta per il web client, il web server deve eseguire un programma, che ha bisogno di dati in ingresso e che generi l'uscita desiderata. Il server gestisce la scambio di informazioni con il client attraverso opportuni protocolli, per esempio lo http.

Per instaurare la comunicazione anche tra il server e un programma esterno, si rende necessario stabilire una interfaccia apposita. La Common Gateway Interface (CGI) è uno standard per interfacciare applicazioni esterne con un server di tipo HTTP o Web.

Le applicazioni che usano questo standard per comunicare con il server prendono il nome di programmi CGI. In origine tali programmi venivano usati per rendere dinamico lo scambio dei dati tra client e server.

Oggi esistono diverse tecnologie per scrivere pagine web dinamiche e per interfacciare un Data Base con una applicazioni web, tuttavia la tecnologia CGI, sebbene non recentissima, rimane un affidabile e semplice strumento per interfacciare e rendere fruibile in internet un programma eseguibile scritto in qualsiasi linguaggio.

Lo schema seguente illustra l'interazione tra web client, web server e programma CGI.

CGI schema logico

Interazione tra client, web server, programma CGI

Le operazioni si svolgono nel seguente ordine:

•  il client, tramite il protocollo HTTP, invia al server la richiesta di eseguire un programma CGI con alcuni parametri e dati in ingresso. Per esempio, il client può richiedere l'esecuzione di un programma di rilevazione dei picchi QRS che richiede in ingresso il file contenente un ECG multitraccia, ed un parametro che indiche la tracia da elaborare;

•  il server, attraverso l'interfaccia CGI, carica il file dal client, chiama il programma passando ad esso i parametri ed il file inviati dal client. Eseguite le operazioni necessarie, il programma CGI rimanda al server i dati elaborati, sempre facendo uso dell'interfaccia CGI;

•  il server invia al client i dati elaborati dal programma CGI tramite il protocollo HTTP.

I programmi CGI e il server comunicano principalmente attraverso quattro modi:

•  Variabili ambientali di sistema

•  Comando di linea (usato per eseguire il programma CGI in una shell di sistema operativo)

•  Standard Input (usato soprattutto con il metodo POST)

•  Standard Output

I programmi CGI possono essere scritti in qualsiasi linguaggio di programmazione che permetta la gestione dei modi di comunicazione appena elencati.

<< >>