| Variablenname | Erläuterung | 
| CONTENT_LENGTH | Enthält die Anzahl der Zeichen, die beim Aufruf des CGI-Scripts über die POST-Methode übergeben wurden. Wenn das CGI-Script beispielsweise beim Absenden eines HTML-Formulars aufgerufen wurde und dort als Übertragungsmethode POST angegeben ist, steht in dieser Umgebungsvariablen, wie viele Zeichen das Script von der Standardeingabe lesen muss, um die übermittelten Formulardaten vollständig einzulesen. | 
| CONTENT_TYPE | Enthält beim Aufruf über die POST-Methode den  Mime-Type der übergebenen Daten. Wenn das CGI-Script beispielsweise beim Absenden eines HTML-Formulars aufgerufen wurde und dort als Übertragungsmethode POSTangegeben ist, steht in dieser Umgebungsvariablen der für HTML-Formulare typische Mime-Typeapplication/x-www-form-urlencoded(zu diesem Mime-Type siehe auch Datenstrom bei Übertragung von Formulardaten). | 
| DOCUMENT_ROOT | Enthält den physischen Pfad des Wurzelverzeichnisses für die Ablage von Dateien, die im Web-Server aufrufbar sind. Ein CGI-Script kann aus dieser Angabe beispielsweise absolute Pfadnamen zum Öffnen von Dateien errechnen. | 
| GATEWAY_INTERFACE | Enthält die Version der CGI-Schnittstelle, die von dem installierten Server unterstützt wird, z.B. CGI/1.1, wenn die gegenwärtig übliche Version 1.1 der Schnittstellendefinition unterstützt wird. | 
| HTTP_ACCEPT | Enthält die Liste der Mime-Types, die der aufrufende Web-Browser akzeptiert. Die Angabe */*bedeutet: der Web-Browser akzeptiert alles. | 
| HTTP_ACCEPT_CHARSET | Enthält die Liste der Zeichensätze, die der aufrufende Web-Browser akzeptiert, beispielsweise iso-8859-1,*,utf-8. | 
| HTTP_ACCEPT_ENCODING | Enthält eine Liste der Kodierungs-Methoden, die der aufrufende Browser akzeptiert. Manche Browser akzeptieren beispielsweise auch den Kodierungstyp gzip, was bedeutet, dass der Browser auch Dateien empfangen kann, die nach dem GNU-Zip-Alghorithmus komprimiert an ihn übertragen werden. | 
| HTTP_ACCEPT_LANGUAGE | Enthält, welche Landessprache der aufrufende Browser bei seiner Benutzeroberfläche verwendet. Häufige Werte sind z.B. de(für deutschsprachige Browser) oderen(für englischsprachige Browser). Ein CGI-Script kann aufgrund dieser Angabe beispielsweise entscheiden, ob es eine deutschsprachige oder eine englischsprachige Antwort an den Browser sendet. | 
| HTTP_CONNECTION | Enthält Informationen über den Status der HTTP-Verbindung zwischen Server und aufrufendem Browser. Der Wert Keep-Alivebedeutet, der Browser wartet auf Antwort. | 
| HTTP_COOKIE | Enthält Namen und Wert von Cookies, sofern solche vom aufrufenden Browser gesendet werden. Mit der Perl-Anweisung: 
 my @cookies = split(/[;,]\s*/,$ENV{'HTTP_COOKIE'});können Sie alle gesetzten Cookies ermitteln. Jedes Element des
  Arrays namens @cookiesenthält dann jeweils einen Cookie, bestehend aus einem Namen und einem Wert, die durch ein Gleichheitszeichen=getrennt sind. Der Wert eines Cookies ist im Format des Mime-Types application/x-www-form-urlencodedgespeichert (zu diesem Mime-Type siehe auch Datenstrom bei Übertragung von Formulardaten). | 
| HTTP_HOST | Enthält den Domain-Namen oder die IP-Adresse aus der Adresszeile des aufrufenden Browsers. Für ein CGI-Script kann diese Angabe wichtig sein, falls es mehrere Server bedienen muss. | 
| HTTP_REFERER | Enthält den URI der Web-Seite, von der aus das CGI-Script aufgerufen wurde. Der Wert wird jedoch nicht von allen Web-Browsern korrekt übermittelt, ist also nicht in jedem Fall verfügbar. Anmerkung: Wenn Ihnen die englische Sprache geläufig ist, werden Sie feststellen, daß
 HTTP_REFEREReigentlichHTTP_REFERRERheißen müßte. Den Autoren der ersten Spezifikation von HTTP ist dieser Fehler unterlaufen, der sich aus historischen Gründen und aufgrund der Abwärtskompatibilität von HTTP bis heute hält. | 
| HTTP_USER_AGENT | Enthält Produkt- und Versionsinformationen zum aufrufenden Web-Browser. Ein CGI-Script kann auf diese Weise ermitteln, welchen Browser ein Anwender verwendet. | 
| PATH_INFO | Wird einem CGI-Script eine Zeichenkette mit Daten übergeben, dann enthält PATH_INFOden Teil der Zeichenkette nach dem Namen des Scripts bis zum ersten ?. Wenn das Script beispielsweise die Adresse  http://meine.seite.net/cgi-bin/test.pl hat, aber mit http://meine.seite.net/cgi-bin/test.pl/querys/musicbase.sql?cat=Mozart aufgerufen wird, dann enthält diese Umgebungsvariable den Anteil/querys/musicbase.sql. Sie ist dazu gedacht, Dateinamen mit Pfadangabe als Übergabeparameter für Scripts zu ermöglichen. | 
| PATH_TRANSLATED | Enthält wie PATH_INFOden Anteil des URI nach dem Scriptnamen bis zum ersten ?, jedoch mit dem Unterschied, dass nicht der Anteil selbst aus dem URI zurückgegeben wird, sondern der vom Web-Server übersetzte Datenpfad dieses Anteils. Angenommen, das Script hat die Adresse http://meine.seite.net/cgi-bin/test.pl, wurde aber mit http://meine.seite.net/cgi-bin/test.pl/querys/musicbase.sql aufgerufen. Dann könnte der zusätzliche Adressanteil /querys/musicbase.sql aus Sicht des Web-Servers beispielsweise in einen physischen Pfadnamen wie /usr/web/seite/querys/musicbase.sql aufgelöst werden. Diesen Pfadnamen würdePATH_TRANSLATEDzurückgeben. | 
| QUERY_STRING | Enthält eine Zeichenkette mit Daten, die dem Script im URI nach dem ersten ? übergeben wurden. Angenommen, das Script hat die Adresse http://meine.seite.net/cgi-bin/test.pl, wurde aber mit http://meine.seite.net/cgi-bin/test.pl?User=Stefan aufgerufen. Dann würde QUERY_STRINGden WertUser=Stefanenthalten. Wenn ein Anwender ein HTML-Formular ausgefüllt hat, bei dessen Absenden das CGI-Script mit derGET-Methode aufgerufen wurde, dann stehen in dieser Umgebungsvariablen die ausgefüllten Formulardaten. Die Daten sind nach den Regeln des Mime-Typesapplication/x-www-form-urlencodedkodiert. | 
| REMOTE_ADDR | Enthält die IP-Adresse des Server-Rechners, über den das CGI-Script aufgerufen wurde. Es muß sich hierbei nicht unbedingt um die IP-Adresse des aufrufenden Client-Rechners handeln - der Wert kann beispielsweise auch von einem Proxy-Server stammen. | 
| REMOTE_HOST | Enthält den Hostnamen des Rechners, über den das CGI-Script aufgerufen wurde. Dieser Wert wird jedoch nur gesetzt, wenn der Web-Server entsprechend konfiguriert und dazu in der Lage ist, der IP-Adresse den entsprechenden Hostnamen zuzuordnen. Es muß sich hierbei nicht unbedingt um die IP-Adresse des aufrufenden Client-Rechners handeln - der Wert kann beispielsweise auch von einem Proxy-Server stammen. | 
| REMOTE_IDENT | Enthält Protokollinformation, wenn auf dem Server das Protokoll ident für geschützte Zugriffe läuft. | 
| REMOTE_PORT | Ermittelt, über welchen Port des Client-Rechners das CGI-Script aufgerufen wurde. Diese Zahl liegt gewöhnlich im Bereich ab 1024 aufwärts und wird vom aufrufenden Web-Browser zufällig ausgewählt. | 
| REMOTE_USER | Enthält den Benutzernamen, mit dem sich der aufrufende Benutzer angemeldet hat, um das CGI-Script aufzurufen. Wenn das Script beispielsweise htaccess-geschützt ist, muss sich der aufrufende Benutzer mit Benutzernamen und Passwort anmelden. Der dabei eingegebene Benutzername kann mit dieser Variable ermittelt werden. | 
| REQUEST_METHOD | Enthält die HTTP-Anfragemethode, mit der das CGI-Programm aufgerufen wurde. Beispielsweise GEToderPOST. Ein CGI-Script kann diese Variable auslesen und danach entscheiden, wie es Formulardaten einlesen kann: entweder von der Standardeingabe (bei Methode POST) oder aus der UmgebungsvariablenQUERY_STRING(bei Methode GET). | 
| REQUEST_URI | Enthält den HTTP-Pfad des Scripts inklusive der im Aufruf übergebenen Daten. Angenommen, das Script hat die Adresse http://meine.seite.net/cgi-bin/test.pl und wurde mit http://meine.seite.net/cgi-bin/test.pl?User=Stefan aufgerufen. Dann liefert REQUEST_URIden Wert/cgi-bin/test.pl?User=Stefan. | 
| SCRIPT_NAME | Enthält den HTTP-Pfad des Scripts. Angenommen, das Script hat die Adresse http://meine.seite.net/cgi-bin/test.pl. Dann liefertSCRIPT_NAMEden Wert/cgi-bin/test.pl. | 
| SCRIPT_FILE_NAME | Enthält den physischen Pfad des Scripts auf dem Server-Rechner, also z.B. /usr/web/data/cgi-bin/test.pl. | 
| SERVER_ADDR | Enthält die IP-Adresse des Server-Rechners. | 
| SERVER_ADMIN | Enthält Namen/E-Mailadresse des in der Webserver-Konfiguration eingetragenen Server-Administrators. | 
| SERVER_NAME | Enthält den Namen des Serverrechners, auf dem das CGI-Script läuft. Normalerweise ist dies der eingetragene Hostname des Rechners. | 
| SERVER_PORT | Enthält die Portnummer, die für den Web-Server eingerichtet wurde. Normalerweise ist dies für Web-Server die Nummer 80. | 
| SERVER_PROTOCOL | Enthält die Version des HTTP-Protokolls, das der installierte Web-Server unterstützt, z.B. HTTP/1.1, wenn die gegenwärtig übliche Version 1.1 des HTTP-Protokolls unterstützt wird. | 
| SERVER_SIGNATURE | Enthält eine erweiterte Selbstauskunft des Servers, z.B. Apache/1.3.14 Server at localhost Port 80. | 
| SERVER_SOFTWARE | Enthält den Namen und die Versionsnummer der Webserver-Software auf dem Serverrechner. |