<?php
   
/*
      Mit dem folgenden Befehl kann dynamisch festgelegt werden,
         welcher Status Code in der Log gespeichert werden soll:
         
      define ( 'HTTP_STATUS_CODE', 404 );
   */

   
function CreateApacheLog ( )
   {
      
$logDirectory "{$_SERVER['DOCUMENT_ROOT']}/logs";
      
$logFile "$logDirectory/apacheLog." date 'Y.m.d' ) . '.txt';
      
$logMsg gethostbyaddr $_SERVER['REMOTE_ADDR'] ) /* DNS-Name */
         
' - ' /* Nichts sinnvolles (s. rfc931) */
         
. ( empty ( $_SERVER['PHP_AUTH_USER'] ) ? '-' 
            
$_SERVER['PHP_AUTH_USER'] ) /* Den Username */
         
strftime ' [%d/%b/%Y:%H:%M:%S +0100]' /* Datum und Uhrzeit */
         
" \"{$_SERVER['REQUEST_METHOD']} {$_SERVER['REQUEST_URI']} "
            
"{$_SERVER['SERVER_PROTOCOL']}\" " /* Request-String */
         
. ( defined ('HTTP_STATUS_CODE') ? HTTP_STATUS_CODE '200' )
            
/* Status Code; Leider nicht über PHP auslesbar */
         
' 1 "' /* Größe der ausgegebenen Datei; auch nicht über PHP auslesbar */
         
. ( empty ( $_SERVER['HTTP_REFERER'] ) ? '-'
            
$_SERVER['HTTP_REFERER'] ) /* Referer */
         
"\" \"{$_SERVER['HTTP_USER_AGENT']}\"" /* Useragent des Browsers '*/
         
"\r\n"/* neue Zeile */

      
if ( function_exists 'file_put_contents' ) )
      {
         
/* Funktion ist erst ab PHP 5 verfügbar */
         
file_put_contents $logFile$logMsgFILE_APPEND );
      }
      else
      {
         
$fileHandle fopen $logFile'a' );
         
fputs $fileHandle$logMsg );
         
fclose $fileHandle );
      }
   }
?>
Sorry, but the content is not completly available in english.
deutsch english
Overview
Downloads
free game
SerpTrain
Physics Studies
Snippets
Mail Test
Guestbook
Contact
Valid HTML 4.01!
Valid CSS!
Get MySQL
Get PHP
Get Firefox
Get Thunderbird
© Michael "Serpedon" Walz