Umgebungsvariable
Eine Umgebungsvariable beschreibt einen Aspekt einer Nutzer- oder Programmumgebung, der variieren kann. Oft wird sie etwa beim Login festgelegt und bestimmt dann eine oder mehrere Komponenten der Arbeitsumgebung des Anwenders. So kann sie zum Beispiel verwendet werden, um den Standarddrucker, einen Browser oder eine Textverarbeitung festlegen, die vom Anwender dann genutzt werden können. Weil sie mit einem identifizierten Nutzer zusammenhängt, spart sie bei jedem Login wertvolle Zeit. Umgebungsvariablen werden in den verschiedensten Sprachen und Betriebssystemen verwendet, um Anwendungen mit Informationen zu versorgen, die sich auf bestimmte Nutzeranfragen beziehen. Ursprünglich stammen sie aus der Unix-Welt, sind aber mittlerweile auch unter Windows anzutreffen.
Umgebungsvariablen für etwa eine Linux-Shell enthalten beispielsweise Informationen über die Umgebung des Nutzers, die an die gestarteten Anwendungen übergeben werden können. Sie können etwa Daten über das aktuelle Arbeitsverzeichnis oder auch die verwendete Terminal-Art enthalten. Diese Variablen werden an jedes Programm weitergeleitet, das nicht direkt mit der Shell verbunden ist. Sie können dort genutzt oder modifiziert werden. Die Variable „TERM“ gibt etwa an, welches Terminal genutzt wird (traditionell werden Umgebungsvariablen in Großbuchstaben geschrieben, um sie leichter erkennbar zu machen), während „PATH“ bestimmt, welche Verzeichnisse nach Programmen abgesucht werden sollen, die in Kommandos verwendet werden. Die Variable „USER“ steht für den aktuellen Nutzer, so dass seine Zugriffsrechte für jede Anfrage leichter überprüft werden können.
Das Common Gateway Interface (CGI) nutzt Umgebungsvariablen, die gesetzt werden, wenn der Server das Gateway-Programm ausführt. Auf diese Weise können Informationen über Anfragen vom Server an ein Skript weitergereicht werden. Dazu kann der Server auch Definitionen für eine Umgebungsvariable wie „SERVER_SOFTWARE“ verschicken, die zur Identifizierung des Namens und der Version der verwendeten Server-Software genutzt werden können. „SERVER_NAME“ definiert dagegen den Hostnamen des Servers, sein DNS-Alias (Domain Name System) und seine IP-Adresse. „GATEWAY_INTERFACE“ wird genutzt, um die CGI-Spezifikation zu bestimmen, die verwendet wird. Diese Umgebungsvariablen sind nicht abhängig von einzelnen Anfragen, sondern werden mit jeder Anfrage neu mitgeschickt. Andere Umgebungsvariablen hängen von der Art der Anfrage ab, die gestellt wird. Beispiele dafür sind etwa „SERVER_PROTOCOL“, die den Namen und die Revision des für die Anfrage genutzten Protokolls identifiziert, während „REQUEST_METHODE“ festlegt, welche Methode für die Anfrage verwendet werden soll.