HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum |
 

 
 

Anzeige 
 
               Forum
 
 
HTMLWorld » CGI » Einführung

CGI: Einführung

von Marcus Engelhardt

Perl zählt als die beliebteste Programmiersprache für das Common Gateway Interface ( CGI ) zu den am weitesten verbreiteten serverseitigen Skriptsprachen. Sie besitzt eine große Fülle von Funktionen und Modulen zur Verfügung und stellt somit eine Spieloase für Programmierer dar.

Anzeige

Was ist CGI?  nach oben

Das CGI (Common Gateway Interface) ist im weitesten Sinne ein standard bzw. eine Norm für eine serverseitige Programmierschnittstelle, die es beispielsweise ebenso wie PHP erlaubt, die vom Server zu übertragenden Inhalte nachhaltig zu verändern. Dies ist möglich, da derartige Scripts stets ausgeführt werden, bevor der Server Daten an der Browser übermittelt. CGI ist also keine Skriptsprache sondern ein Protokoll. CGI-Skripte können im Prinzip in jeder Programmiersprache verfasst werden, welche das Lesen von STDIN und das Schreiben auf STOUT sowie das Lesen von Umgebungsvariablen (Environment variables) ermöglichen.
So stellen dafür geeignete Skriptsprachen wie z.B. das beliebteste und universell einsetzbare Perl mit seiner Vielzahl von Funktionen und Modulen dem Programmierer Möglichkeiten bereit, die nahezu unerschöpflich sind.

Was kann CGI?  nach oben

Aufgrund der Tatsache, dass ein CGI-basierendes Skript stets auf dem Server und nicht clientseitig ausgeführt wird, ergeben sich Möglichkeiten, welche mit clientseitigen Skriptsprachen nicht realisierbar sind. So ist es beispielsweise möglich, Dateien auf Servern zu verändern bzw. zu erstellen oder auf Datenbanken zuzugreifen. Derartig modifizierbare Inhalte sind Grundlage für die meisten Bedürfnisse moderner Websites mit interaktiven Elementen wie beispielsweise Foren, Gästebücher oder Besucherzählern.

Was kann CGI nicht?  nach oben

Die oben erläuterten Sachverhalte zeigen gleichzeitig die Schwächen von CGi-basierenden Skriptsprachen wie Perl auf: Sie sind auf das "Zusammenspiel" mit clientseitigen Skriptsprachen angewiesen, ohne die sie Informationen von Servern in keiner vernünftigen Art und Weise für den Clienten aufbereiten könnten. Eben weil sie serverseitig und vor allem vor der Ausgabe an den Browser ausgeführt werden, lassen sich mit CGI keine Objekte im Browserfenster des Besuchers animieren, dynamische Menüs oder andere Sachen, die mit Technologien wie DHTML möglich sind, erzeugen.

Die Entstehung von CGI und Perl  nach oben

CGI und Perl werden heute fälschlicherweise oftmals im gleichen Atemzug genannt, obwohl dafür zweckmäßig als auch historisch kein unbedingter Zusammenhang besteht.

Die Entstehung von CGI

Nachdem die HTTP-Spezifikation entwickelt wurde, welche es erstmals ermöglichte, Daten zur Anzeige als Website zu bringen, wurde schnell klar, dass dies nicht ausreichend ist, um die schnell steigenden Bedürfnisse zu befriedigen. Man musste die Eigenschaft eines Servers herausbilden, Clienten zu erlauben auch Daten auf ihm speichern und modifizieren zu können. Aus dieser Idee heraus entstand das Common Gateway Interface, das sich bis heute behaupten konnte.

Die Entstehung von Perl

Die Skriptsprache Perl (practical extraction and report language) wurde 1987 von Larry Wall entwickelt. Die Bezeichnung der Sprache deutet bereits auf den ursprünglichen Zweck, nämlich dem Extrahieren von Informationen aus Dateien und der Aufbereitung dieser in einem "Report", hin. Bis dato vorhandene Programmiersprachen wie UNIX konnten aufgrund mangelnder Flexibilität diesen Anforderungen nur in Ansätzen gerecht werden.
Perl erfreute sich sofort nach seiner Veröffentlichung großer Beliebtheit und wurde aufgrund wiederum rasant steigender Anforderungen an die Programmiersprache auch von anderen Programmierern ständig weiterentwickelt. Dieser Prozess hält bis heute an.

Alternativen zu CGI/Perl  nach oben

Im Laufe der Zeit entstanden natürlich auch Alternativen zu CGI-basierenden Skriptsprachen. Der Fokus bei der (Weiter-)Entwicklung von Perl lag stets auf dem praktischen Nutzen, wodurch eine Vielzahl von Modulen entstand, welche einen schwer erfassbaren Umfang von CGI bedeuteten. Als Alternativen zu Perl wären in diesem Zusammenhang PHP und ASP zu nennen, welche in ihrer Handhabung benutzerfreundlicher - weil einfacher - sind. PHP drängte Perl in den letzten Jahren zwar stark zurück, war bisher aber nicht in der Lage, Perl vollständig zu verdrängen, was nicht zuletzt an der universellen Einsetzbarkeit von Perl liegt.



« zurück weiter »
Bewerten

 

CGI

.Autor:Jan Winkler.
. Bewertung:
CGI: Einführung HTMLWorld
(5/5 bei 1 Votes)
.
. Community: 7 Beiträge im CGI Forum .

Navigation


 
     
 

Anzeige