CGI

introductie

Joost van Meeteren


CGI - Inleiding

Naast een inleiding over CGI kunnen er tevens twee webpagina's met een CGI-script worden geopend:

Common Gateway Interface. Een Common Gateway Interface of CGI is een belangrijke WWW technologie die het mogelijk maakt om in de browser dynamisch gegevens op te vragen van de webserver. CGI is een standaard voor data overdracht tussen de cliënt en het programma.

CGI is ontwikkeld door NCSA in 1993 voor de NCSA HTTPd webserver. Gegevens uit de querystring worden door de webserver als omgevingsvariabelen doorgegeven aan het aangeroepen CGI-programma, en deze worden door het programma gebruikt als parameters. Het programma stuurt het resultaat van de bewerking terug naar de webserver, en de webserver stuurt het terug naar de browser.

CGI-programma's worden door de webserver principieel anders behandeld dan statische HTML pagina's. Daarom hebben CGI-programma's speciale rechten (uitvoerbaar) nodig. Vaak worden dergelijke programma's bij elkaar in een directory gezet, waarbij de benodigde rechten op alle bestanden in die directory staat. Een veelgebruikte naam voor zo'n directory is "cgi-bin".

Voor CGI-programma's kan een scripttaal worden gebruikt, maar ook een gecompileerd programma. Het is zelfs mogelijk om onder Windows, een DOS batch-file als CGI-programma te laten functioneren.

Scripttalen die veel voor CGI worden gebruikt zijn Perl, Python en Ruby.

Bij CGI wordt elke keer als een CGI-programma wordt opgevraagd, een nieuw proces gestart. Dat kan capaciteitsproblemen geven bij een te groot aantal requests. Later ontwikkelde technologieën als PHP, ASP en Cold Fusion ondervangen dit probleem. Bij deze technologieën lopen de scripts in-proces in de webserver.

In de veelgebruikte Apache webserver is het inmiddels mogelijk om CGI-programma's in-proces te laten lopen, door het installeren van de mod perl module. De webserver is daardoor in staat om zelf perl-scripts te interpreteren en hoeft geen externe perl-interpreter aan te roepen.


Bovenstaande tekst is integraal overgenomen van de website van Wikipedia: http://nl.wikipedia.org/wiki/Common_Gateway_Interface.

Andere adressen met informatie over CGI en adressen met CGI-downloads zijn http://www.cgidir.com/ (CGIDir), http://hoohoo.ncsa.uiuc.edu/cgi/ (The Common Gateway Interface) en http://www.mijnhomepage.nl/cgi-scripts.php (Gratis CGI Scripts).


De server waar deze website onder draait, ondersteunt geen CGI.

Om toch webbestanden met CGI vanaf deze site te kunnen laden, gebruik ik een andere webserver (Angelfire.com - helaas met reclameboodschappen) die wel CGI ondersteunt.


CGI - Voorbeelden

Hier volgt een webpagina die een CGI-opdracht via een (andere) server laat uitvoeren: Voorbeeld van een bezoekersteller middels een CGI-script via Angelfire.com.

Hier volgt een tweede webpagina die een CGI-opdracht via een (andere) server laat uitvoeren: Voorbeeld van een email-formulier versturen middels een CGI-script via Angelfire.com.


CGI - Logo

   


Joost van Meeteren Websites
2002-2024 © Joost van Meeteren, Bennekom NL
Laatste update website: donderdag 28 maart 2024