Artikel weiterleiten
Artikel editieren
Druckansicht
FAQ #822

Was ist ein CGI?

Der Begriff CGI bedeutet übersetzt Allgemeine Verwaltungsrechner Schnittstelle und ist ein Protokoll, das den Austausch von einem Webserver mit externer Software oder Skripten gewährleistet. Der Webserver interpretiert die CGI Scripte und liefert eine Ausgabe, die wiederum von z. B. HTML weiterverarbeitet werden kann.

 

CGI-Skripte sind also kleine Programme, die vom Webserver ausgeführt werden können.

 


cgi-bin Verzeichnis

Gewöhnlich werden CGI Skripte in der Programmiersprache Perl geschrieben, es gibt aber auch eine ganze Reihe weiterer Programmiersprachen. Auf dem Webserver steht hierfür eine Laufzeitumgebung zur Verfügung. Im Ordner cgi-bin werden CGI-Skripte vom Webserver interpretiert, statt wie sonst üblich im Browser angezeigt zu werden.

 

Im Vergleich zu statischen HTML Inhalten, werden CGI-Skripte in Echtzeit ausgeführt und können abhängig von der Eingabe, immer andere Ergebnisse liefern. Mit Hilfe von CGIs können Sie z. B. einen Gästebuch Eintrag in einer Datei speichern, um diesen Eintrag später mit HTML beziehungsweise PHP wieder auszulesen und unterschiedlich anzeigen zu lassen.

 

Ab STRATO Hosting Basic (vormals PowerWeb Basic-Paketen) haben Sie die Möglichkeit, eigene CGIs (.cgi) zu installieren. In Perl geschriebene Scripte (.pl) können bereits ab dem BasicWeb XL für den interaktiven Webauftritt genutzt werden. Die Erstellung von eigenen CGIs setzt weitreichende Programmier- und UNIX Betriebssystem-Kenntnisse voraus.

 

So installieren Sie eigene CGIs auf unserem Server

 

Wie kann ich prüfen, ob mein Perl-Script korrekt interpretiert wird?

 

Für eigene CGIs sind Kenntnisse im Programmieren unerlässlich. Sinnvoll sind außerdem Grundkenntnisse im Umgang mit Unix. Das Einrichten eigener CGIs empfehlen wir deshalb nur fortgeschrittenen Online-Profis.

 

Sie brauchen

  • CGIs zum Installieren
  • Kenntnisse im Umgang Unix
  • Kenntnisse im Hochladen von Dateien auf unseren Server
  • Einen Browser zur Kontrolle

 

Nötige Basisinformationen

Folgende Programmiersprachen sind nutzbar:

  • Perl
  • SSI
  • Python (ab Premium/PowerPlus Paket)
  • Ruby (ab Premium/Power Plus Paket)

 

Der Pfad für Perl5 ist dann beispielsweise: /usr/bin/perl5

 

CGI Verzeichnis und Pfade:

  • Ihr CGI Verzeichnis ist: wunschname.de/cgi-bin Ersetzen Sie dabei "wunschname" durch Ihren Domainnamen.

 

Hinweis: Ihr CGI Verzeichnis liegt auf der obersten Ebene Ihres Webspeicherplatzes. Sollten Sie Ihre Domain umgeleitet haben, liegt das Verzeichnis nicht mehr unter wunschname.de/cgi-bin. Verwenden Sie in diesem Fall bitte Ihre Master-ID anstatt Ihrer Domain.

  • Der Aufruf der CGIs als URL erfolgt nach folgendem Muster: http://wunschname.de/cgi-bin/Name Ihres CGI-Scriptes Ersetzen Sie dabei "wunschname" durch Ihren Domainnamen und "Name Ihres CGI-Scriptes" durch Ihren Scriptnamen. Beachten Sie bitte, dass "htdocs" nicht in der URL angegeben wird!
  • Innerhalb der CGI-Scripte sind absolute Pfadangaben nach folgendem Schema aufzubauen: /home/strato/www/erste zwei Buchstaben der Domain/www.wunschname.de/htdocs/ Ersetzen Sie dabei "wunschname" durch Ihren Domainnamen und "erste zwei Buchstaben der Domain" durch die ersten zwei Buchstaben Ihres Domainnamens.

 

Beispiel für die Domain "www.wunschname.de": /home/strato/www/wu/www.wunschname.de/htdocs/

 

Generell behalten wir uns vor, Scripte, die den Serverbetrieb nachhaltig stören, zu deaktivieren.

 

Allgemeine Tipps: Hochladen der Scripte: Perl-Scripte müssen im FTP-Programm als "ASCII" übertragen werden, nicht als "Binary". Bei Hosting-Paketen ist ausschließlich die Endung ".pl" (für Perlskripte) zugelassen. Ab den älteren Premium-Paketen und allen neuen Paketen ab 2015 ist ".pl" und ".cgi" zulässig. Zugriffsrechte richtig setzen Damit die Script-Datei ausgeführt werden kann, müssen die Zugriffsrechte entsprechend eingestellt sein. Ändern Sie diese im Zweifelsfall per Telnet mit chmod 755 dateiname (wobei Sie "dateiname" durch den Namen Ihrer Datei ersetzen). Testen Sie Scripte sorgfältig lokal und auf dem Server, bevor Sie diese auf Ihren Seiten intensiv einsetzen.

 

Weitere Informationen

Weitere Informationen

×
War dieser Artikel hilfreich?    Ja / Nein