/** * Эта функция записывает информацию о доступе к текущей странице в журнал * файл. Он использует комбинированный формат файла журнала, который также используется * веб-сервер apache. Целая куча доступных анализаторов логов может быть * используется для визуализации журнала. * * @автор Маттиас Гримм */ function tpl_logfile(){ global $ID; global $conf; $exists = false; $page = cleanID($ID); resolve_pageid('', $page, $exists); $page = str_replace(':','/',$page); $page = utf8_encodeFN($page); $host = $_SERVER['REMOTE_ADDR']; $user = isset($_SERVER['REMOTE_USER']) ? $_SERVER['REMOTE_USER'] : "-"; $timestamp = date("[d/M/Y:H:i:s O]"); $method = isset($_SERVER['REQUEST_METHOD']) ? $_SERVER['REQUEST_METHOD'] : ""; $protocol = isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : ""; $filesize = @filesize(wikiFN($ID)); $status = $exists ? "200 $filesize" : "404 0"; $agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ""; $referer = $_SERVER['PHP_SELF']; $logline = "$host - $user $timestamp \"$method $page $protocol\" $status \"$referer\" \"$agent\"\n"; io_saveFile($conf['logfile'], $logline, true); }