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