Wie lese ich Webserverumgebungsvariablen aus?
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.
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.
Danke, bin davon ausgegangen daß die Variablen vom cgi-Modul kommen, aber mit os.environ.get(...) funktionierts.
Oliba
Oliba
-
- 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
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
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.
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.
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.



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...
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
>>>
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