
| Cos'è? | una interfaccia totalmente trasparente per eseguire su un server programmi esterni (detti gateway) | |
|---|---|---|
| A cosa serve? |
- per visualizzare files non leggibili con il browser - per utilizzare databases - per eseguire operazioni - per controllare gli accessi - per condizionare la risposta | |
| Cosa si vede da HTML? | <FORM> <ISMAP> <ISINDEX> |
raccolta dati mappe sensitive ricerche per parola chiave |
| Come funziona? | on-the-fly: 1. un URL richiama un programma eseguibile su un server 2. il server crea una shell e lancia il programma 3. il programma esegue il suo compito e termina scrivendo una pagina html completa 4. il server manda la pagina al client, poi la cancella | |
| modalità | ambiente | linguaggi | input | output |
|---|---|---|---|---|
| CGI | UNIX Windows NT | UNIX shell, C, C++, perl | variabili di environement, <STDIN> | <STDOUT> |
| WIN-CGI | Windows NT | Visual Basic, Visual C++ | ########.INI ########.CON (content) [URL ARG] | ########.OUT |
| DOS-CGI | Windows 3.1 | DOS command interpreter, C, C++, perl |
variabili di environement ########.ACC (accept) ########.INP (content) | ########.OUT |
l'output deve essere un file che contiene una pagina html
da rispedire al client e che viene poi cancellata:
on-the-fly page

il server deve essere abilitato
il programma non deve avere interattività
il programma deve stare in una directory privilegiata
il programma deve avere privilegi di esecuzione e di scrittura
problemi di sicurezza
problemi di autorizzazioni

Windows non ha un interprete di comandi nativo,
quindi necessita di un ambiente opportuno che deve essere definito sul server.
occorre costruire un eseguibile back end
L'I/O non avviene tramite le variabili di ambiente,
ma attraverso file temporanei
torna alla pagina principale