Le specifiche del CGI che abbiamo visto finora riguardano il passaggio dei parametri dal server al gateway. Il CGI, però, definisce anche il trasferimento inverso: quello dei dati di output che il gateway deve passare al server. Questo trasferimento avviene solamente tramite standard output. Le uniche differenze si hanno per quei gateway program il cui nome comincia per nph, i quali si prendono anche l'onere di comporre anche l'header del messaggio http. In questo caso dunque il server indirizza l'output del gateway direttamente verso il client. I gateway il cui nome non comincia per nph, invece, delegano la composizione dell'header http al server stesso e si limitano a fornire solo delle direttive (una di tali direttive, sempre presente, è la linea "Content-type: ..." che il server deve includere nell'header). La stringa "nph" sta per Non Parsed Header, e si riferisce al fatto che quando essa è assente l'header del messaggio http viene composto dal server dopo aver fatto un parsing (controllo lessicale) dell'output del gateway program alla ricerca delle direttive cui si è accennato.
La differenza tra i due tipi di approccio è nella maggiore elasticità (e il maggiore onere per il programmatore) del primo approccio (non-parsed header) rispetto al secondo.

pagina precedente   indice delle pagine