Wie lese ich Webserverumgebungsvariablen aus?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
oliba

Wie kann ich die Umgebungsvariablen des Webservers auslesen, um bsp.weise zu ermitteln welcher User sich eingeloggt hat. Die Frage dürfte verraten, daß ich Neuling bin. Habe bis jetzt nix woanders gefunden.
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

im Modul os findest du in der Variable environ (Dictionary) alle Variablen die dem Server übergeben wurden. Das kann varieren, je nachdem ob Cookies, Formulare oder andere Sachen übergeben wurden. Ob da auch Daten über den User enthalten sind weiß ich nicht, weil es wie gesagt davon abhängt, was übergeben wurde.
oliba

Danke, bin davon ausgegangen daß die Variablen vom cgi-Modul kommen, aber mit os.environ.get(...) funktionierts.
Oliba
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Hallo oliba

wenn du mit os.environ.get('LOGNAME') dein Login erhälst, dann muß ich davon ausgehen, dass du dein Script in eine Shellumgebung z. B. in Terminalfenster laufen lässt.

Wenn du dein Prog über Broeser und cgi aufrufst, erwarte ich, dass du nichts, bestenfalls den user des cgi-scriptes zurückbekommst. Oder liege ich da etwa total daneben?

Hans
oliba

Hallo Hans

hatte mich wahrscheinlich unklar ausgedrückt, es ging mir um den Usernamen beim Einloggen in ein passwortgeschütztes Verzeichnis auf dem Webserver über den Browser via .htaccess. Und den kann ich mit os.environ.get("REMOTE_USER") auslesen.
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

jupp, wenn du das meinst ist es richtig... Das gleiche verwende ich auch bei einer selbstgeschriebenen I-Net-Testarea. Die ist aber auch pass-geschützt, da man sonst sehr viel unsinn damit anstellen könnte und der server nicht mir gehöhrt. :wink: :roll:
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Mal nachgebohrt: Wer / Wo / Was bildet die Umgebungsvariablen? Das Betriebssystem beim Einloggen oder der Webserver beim starten?

Wenn OS: Gibt's signifikante Unterschiede zwischen den OS?
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Umgebungsvariablen sind bestimmte Variablen die der Browser (Cookies, Formulare, IP...) und das System (Pfade wie DOCUMENT_ROOT) bilden. Bei CGI's überwiegt wohl der Anteil des Browsers, bei "normalen" Scripten der Anteil des Systems. Es wird ja nur das reingeschrieben, was wirklich vorhanden ist, deswegen sind die immer verschieden und man sollte mit getdrauf zufreifen, weil es halt passieren kann, das ein key nicht vorhanden ist...
oliba

Unter http://selfhtml.teamone.de/cgiperl/intr ... iablen.htm findet man folgende Beschreibung:
>>>
Ein installierter Web-Server stellt solche Variablen auf Betriebssystemebene zur Verfügung. Bei jedem Aufruf eines CGI-Scripts füllt er einige dieser Variablen mit Informationen. Das CGI-Script kann den Inhalt dieser Variablen auslesen und für eigene Zwecke nutzen. Das CGI-Script kann einige dieser Variablen auch selbst mit Inhalt füllen oder einen dort gespeicherten Inhalt ändern. CGI-Umgebungsvariablen existieren unabhängig von den Variablen, die Sie in einem CGI-Script selbst definieren können.
<<<

oliba
Antworten