CGI Common Gateway Interface


Inhalt

  1. Einleitung
  2. Benutzung
  3. Beispiele
  4. Spezifikation
























Einleitung

Was ist das CGI ?

Common Gateway Interface


Wozu kann das CGI verwendet werden ?



Wie sehen CGI Programme aus ?


Verbreitete Programmiersprachen

Interpretierte Sprachen bevorzugt.

Wer hat CGI entwickelt ?

Autoren der ersten WWW-Server

Aktuelle Version CGI/1.1.













Benutzung

Wie werden die Informationen zwischen dem WWW-Client, WWW-Server und dem CGI Program ausgetauscht ?


Auswahl des CGI Programms in einem URL.

http://server-ip/path/cgi-prog/path-info?query-string

Hinweis: keine Kommandozeilenparameter an das CGI Program

D.h. cgi-prog arg1 arg2 geht nicht


Wie wird Information vom Server empfangen ?

Empfang auf 3 Arten:


Query-String Methode

http://server-ip/path/cgi-prog/path-info?query-string

query-string in Umgebungsvariable QUERY_STRING


Path-Info Methode

http://server-ip/path/cgi-prog/path-info?query-string

/path-info in Umgebungsvariable PATH_INFO


Stdin -Datei Methode

Wird per Pipe gesendet und von Stdin gelesen


Wie wird Information zum Server gesendet ?

Rückgabe durch Stdout "Datei"

im richtigen Format: HTML


MIME Inhaltstyp

Content-type: m-type/m-stype

Beispiele


Ortsangabe

Location: ftp://host/dir/dateix.txt

Der Client erzeugt eine FTP-Verbindung


Wie wird Information vom Client aufbereitet ?

Formulare: HTML <FORM> Keyword

zwei Parameter

Daten des Formulars


Beispiele

Grundaufbau CGI Program

  1. Feststellen der Übertragungsmethode
    Ansehen der Umgebungsvariablen REQUEST_METHOD.
    Mögliche Werte: GET, POST, HEAD
  2. Lesen von CONTENT_LENGTH Bytes von QUERY_STRING oder Stdin.
  3. URL Dekodierung der Zeichenkette.
  4. Aufspaltung der Zeichenkette entlang &.
  5. Aufspaltung der Paare name=content entlang =.
  6. Verwenden der so aufbereiteten Informationen.


Spezifikation

CGI 1.0 oder 1.1:

Alle Spezifikationen der Version 1.1 sollen auch von zukünfigen Erweiterungen erfüllt werden.