Beim CGI – dem Common Gateway Interface (übersetzt: allgemeine Verwaltungsrechner Schnittstelle) – handelt es sich um eine standardisierte Datenschnittstellen eines Webservers. Das CGI ermöglicht es, Daten zwischen Webservern und externen Programmen standardisiert auszutauschen und so die Funktionalität einer Website zu erweitern. Das heißt, HTML-Seiten müssen nicht fertig auf dem Server zur Verfügung stehen und bei Bedarf heruntergeladen werden, sondern werden vom CGI-Programm dynamisch erzeugt, sobald eine entsprechende Anfrage – etwa eine Eingabe in ein Formular erfolgt. CGI ist somit (meistens) die technische Grundlage für serverseitige Programmiersprachen wie php.
Schnittstelle mit langer Geschichte
Die Geschichtes des Common Gateway Interface geht auf den Start des WWW zurück: CGI wurde parallel zu den ersten Servern für das World Wide Web programmiert, ist heute eine der ältesten Schnittstellen zwischen Webservern und externer Software und wird nach wie vor häufig verwendet. Das CGI zeichnet sich dadurch aus, dass es frei verwendbar und nicht an eine bestimmte Programmiersprache gebunden ist.
Wo kommt das CGI zum Einsatz?
Anders als statische HTML-Inhalte werden CGI-Skripte in Echtzeit ausgeführt und können abhängig von der Eingabe immer andere Ergebnisse liefern. Das CGI spielt bei einer Vielzahl von alltäglichen Aktionen im Netz eine Rolle. Dazu gehören unter anderem:
Formulare: Nutzer geben Daten in eine Vorlage ein. Über „Absenden“ oder „Submit“ geht das Formular an das CGI-Programm. Dieses liest die Daten aus, verarbeitet sie und schickt sie zurück an den Webserver.
Online-Shoping: Wird in einem Online-Shop etwas in den Warenkorb gelegt beziehungsweise werden vom Nutzer Daten eingegeben, sorgt das CGI-Programm für die Verarbeitung und die anschließende Rücksendung an den Server.
Kommentare: Nutzerkommentare werden ebenfalls oft per CGI-Programm verarbeitet.
Wie funktioniert das CGI?
Sobald ein Nutzer auf einer Webseite Daten eingibt, ermöglicht das CGI, dass die entsprechenden Daten über einen festen Standard an das sogenannte Ausleseprogramm gehen. An dieser Stelle werden die Daten aufbereitet und dann wieder an das HTML-Formular zurückgesendet.
Als Pluspunkte des CGI gelten neben der Plattformunabhängigkeit und der freien Verwendbarkeit die geringe Serverlast (die vom CGI generierten Anwendungen müssen nicht auf dem Server gespeichert werden) sowie die vergleichsweise einfache Konfiguration.