Miloggen von htaccess

Hallo,
ich hoffe ich habe hier das richitge Forum.
Weiß jemand wie ich die Zeit und den Benutzer mitloggen kann, wenn sich einer in ein geschützes Verzeichniss einloggt. Oder ist das gar nicht möglich. Hat dann jemand vielleicht eine andere idee? Ich brauche halt einen Verzeichnissschutz, bei dem mitgeloggt wird.

Hallo Traxx,

Weiß jemand wie ich die Zeit und den Benutzer mitloggen kann,
wenn sich einer in ein geschützes Verzeichniss einloggt. Oder
ist das gar nicht möglich.

Jeder vernünftige Webserver kann die Zugriffe auf deine
Seiten mitloggen und macht das gewöhnlich per Voreinstellung.

Die Logdatei heisst normalerweise access.log und besitzt
beim Apache (und den meisten anderen Webservern) folgendes
Standardformat:

host ident authuser date request status bytes

Ich brauche halt einen Verzeichnissschutz, bei
dem mitgeloggt wird.

Bei Seiten, die mittels .htaccess als passwortgeschuetzt
deklariert wurden, steht im obigen „authuser“ der Loginname
des Zugreifenden, ansonsten ein Minus „-“.

Um nun nur die authentifizierten Zugriffe aus access.log
mit dem Datum anzuzeigen, kommt am schnellsten ein
Perl-Einzeiler ans Ziel:

c:\\>perl -lane "if ($F[2] ne '-'){print $F[3],': ',$F[2];};" c:\httpd\Logs\Access.log

Die Zeile funktioniert so bei Windows, auf einem
Linux/Unix-System musst Du die " und ’ noch miteinander
vertauschen.

Wem das zu erschreckend ist, kann das auch in Skriptform haben:

#!/usr/bin/perl
while(){ 
#oder "while(){" bei Angabe einer Datei als Parameter
 @tokens=split(/ /);
 if ($tokens[2] ne "-"){
 print "Zugriff von $tokens[2] auf passwortgeschützte Seite am $tokens[3]\n";
 }
} 

\_\_DATA\_\_
127.0.0.1 - - [14/Mar/2000:12:45:15 +0100] "GET /manual/index.html HTTP/1.0" 200 2478
127.0.0.1 - - [14/Mar/2000:12:45:15 +0100] "GET /manual/images/index.gif HTTP/1.0" 200 1540
127.0.0.1 - login [14/Mar/2000:12:45:15 +0100] "GET /manual/images/sub.gif HTTP/1.0" 200 6083
127.0.0.1 - - [14/Mar/2000:12:45:31 +0100] "GET /manual/misc/rewriteguide.html HTTP/1.0" 200 65616

Damit sollte dein Problem gelöst sein :wink:

Gruss,
-Andreas.