Sie kennen es wahrscheinlich: Sie wählen die Seite einer Suchmaschine aus, warten bis die Web-Seite erscheint und geben eine Begriff in ein Textfeld ein. Nach dem Klick auf »Suchen« erscheint die Antwort. Möglich macht diese Interaktion erst das Common Gateway Interface.
Ohne diese Erweiterungsmöglichkeit könnte ein Web-Server lediglich vorgefertigte Web-Seiten verschicken. So war das noch bei HTML in der ersten Version. Ab Version 2.0 gab es die Eingabemöglichkeiten. Doch was soll der Web-Browser tun, wenn der Benutzer alle Werte eingegeben hat?
Die Werte werden an den Web-Server zurückgeschickt und er darf sie verarbeiten. Aber auch er kann damit nichts anfangen. Statt dessen hat er eine allgemeine Schnittstelle, um Programme zu starten und mit den verschickten Daten zu füttern. Diese Schnittstelle ist das Common Gateway Interface. Es ist bei allen Web-Servern zu finden.
|
<FORM ACTIONhttp://www.meinweb.de/cgi-bin/auswertung">
Das, was hinter »cgi-bin/« steht, ist der Programmname. Das Programm startet der Web-Server, nachdem Sie auf »Suchen« geklickt haben und die Daten komplett angekommen sind. Ihm übergibt er die vom Web-Browser hinterhergeschickten Daten. Fragt sich nur, wie? Da gibt es zwei Methoden:
Anschließend kann das Programm sich auf dem Web-Server austoben und sein Ergebnis zurückliefern. Und das geht ganz einfach: Es muß einfach nur HTML-Code ausgeben und zwar so, als würde es die Ausgabe auf den Bildschirm schreiben wollen. In C würde ein
printf("<H1>Hallo Leute</H1> Wie geht's?\n");
ausreichen. Die Aktionen beschränken sich also auf das Auslesen einer ENV-Variable und dem Ausspucken von HTML. Nicht mehr und nicht weniger. Dazwischen ist alles erlaubt.
Im Zusammenhang von CGI ist oft von Skriptsprachen wie »Perl« die Rede, die man lernen muß, wenn man mit CGI arbeitet. Um es deutlich zu sagen: Das ist Quatsch. »Perl« ist zwar eine sehr mächtige Sprache, die perfekt zu CGI paßt, aber CGI-Programme können Sie in jeder x-beliebigen Sprache schreiben.
Wer schon viel in C geschrieben hat und sich damit gut auskennt, kann C nehmen. Aber auch Amiga-E, ARexx, Shell-Skripte, Pascal oder auch Assembler eignen sich dafür. Hauptsache, das Programm kann ENV-Variablen auslesen und Texte ausgeben. Und das kann wirklich jedes Programm irgendeiner Programmiersprache.
Um selbst einmal ein CGI-Skript oder Programm auszuprobieren, brauchen Sie zwingend einen Web-Server. Perfekt eignet sich dafür der AWS, zu bekommen auf dem Web-Server, wo es auch IBrowse gibt (
© 1998 All Rights Reserved. Alle Rechte vorbehalten Franzis' Verlag GmbH
Veröffentlichung und Vervielfältigung nur mit schriftlicher Genehmigung des Verlags