PHP 生成自己的LOG文件示例

前端之家收集整理的这篇文章主要介绍了PHP 生成自己的LOG文件示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
对用PHP生成自己的LOG文件感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
如果你的服务器不容许你读他的LOG文件,那你只好停下来分析你的访问者?做你自己的LOG文件吧! 你仅需做的事情是用PHP计算实际的点击次数,没有错误,没有象'304 Not Modified' 和 'Internal Server Error' 一样的错误。你的代码生成自己的LOG文件

/**
 * 用PHP生成自己的LOG文件
 *
 * @param 
 * @arrange 512-笔记网: 512Pic.com
 **/
/* 用户定义变量 */ 
$logfile = "clf.log"; /*LOG文件写到那里 */ 
$timezone = "+0100"; /* Timezone correction */ 
$lookup_size = true; /* 设置文件的权限 */ 
$document_root = "/usr/local/apache/share/htdocs";
/* 他可能或不可能对相同的客户端记数
* 一定要对$document_root 这个变量进行设置才可以工作
*/
function write_to_log($str) { 
if($fd = @fopen($GLOBALS[ "logfile"],"a")) { 
fputs($fd,$str); 
fclose($fd); 
} 
}
function get_var($name,$default) { 
if($var = getenv($name)) { 
return $var; 
} else { 
return $default; 
} 
}
if($remote_host = get_var( "REMOTE_HOST",false)) { 
$remote_host = get_var( "REMOTE_ADDR","-"); 
} 
$remote_user = get_var( "REMOTE_USER","-"); 
$remote_ident = get_var( "REMOTE_IDENT","-"); 
$server_port = get_var( "SERVER_PORT",80); 
if($server_port!=80) { 
$server_port = ":" . $server_port; 
} else { 
$server_port = ""; 
} 
$server_name = get_var( "SERVER_NAME","-"); 
$request_method = get_var( "REQUEST_METHOD","GET"); 
$request_uri = get_var( "REQUEST_URI",""); 
$user_agent = get_var( "HTTP_USER_AGENT",""); 
if($lookup_size == true && $document_root) { 
$filename = ereg_replace( "\?.*","",$request_uri); 
$filename = "$document_root$filename"; 
if(!$size = filesize($filename)) { 
$size = 0; 
} 
} else { 
$size = 0; 
}
$date = gmdate( "d/M/Y:H:I:s"); 
$log = "$remote_host $remote_ident $remote_user [$date $timezone] \"". 
"$request_method http://$server_name$server_port$request_uri\" 200 $size\n";
write_to_log($log);

/***   来自编程之家 jb51.cc(jb51.cc)   ***/

猜你在找的PHP相关文章