网站地图    收藏   

主页 > php专栏 > php应用 >

用PHP生成自己的LOG文件 - php高级应用

来源:自学PHP网    时间:2014-11-27 22:16 作者: 阅读:

[导读] 假如你的服务器不容许你读他的LOG文件,那你只好停下来分析你的访问者?做你自己的LOG文件吧,你仅需做的事情是用PHP计算实际的点击次数,没有错误,没有象 304 Not Modified 和 Internal...

用PHP生成自己的LOG文件

假如你的服务器不容许你读他的LOG文件,那你只好停下来分析你的访问者?做你自己的LOG文件吧,你仅需做的事情是用PHP计算实际的点击次数,没有错误,没有象'304 Not Modified' 和 'Internal Server Error' 一样的错误,你的代码将生成自己的LOG文件:

  1. <?php 
  2. /* 用户定义变量 */ 
  3. $logfile = "clf.log"/*LOG文件写到那里 */ 
  4. $timezone = " 0100"/* Timezone correction */ 
  5. $lookup_size = true; /* 设置文件的权限 */ 
  6. $document_root = "/usr/local/apache/share/htdocs"
  7.  
  8. /* 他可能或不可能对相同的客户端记数 
  9. * 一定要对$document_root 这个变量进行设置才可以工作 
  10. */ 
  11.  
  12. function write_to_log($str) { 
  13. if($fd = @fopen($GLOBALS"logfile"], "a")) { 
  14. fputs($fd$str); 
  15. fclose($fd); 
  16.  
  17. function get_var($name,$default) { 
  18. if($var = getenv($name)) { 
  19. return $var
  20. else { 
  21. return $default
  22.  
  23. if($remote_host = get_var( "REMOTE_HOST", false)) { 
  24. $remote_host = get_var( "REMOTE_ADDR""-"); 
  25. $remote_user = get_var( "REMOTE_USER""-"); 
  26. $remote_ident = get_var( "REMOTE_IDENT""-"); 
  27. $server_port = get_var( "SERVER_PORT", 80); 
  28. if($server_port!=80) { 
  29. $server_port = ":" . $server_port
  30. else { 
  31. $server_port = ""
  32. $server_name = get_var( "SERVER_NAME""-"); 
  33. $request_method = get_var( "REQUEST_METHOD""GET"); 
  34. $request_uri = get_var( "REQUEST_URI"""); 
  35. $user_agent = get_var( "HTTP_USER_AGENT"""); 
  36. if($lookup_size == true && $document_root) { 
  37. $filename = ereg_replace"?.*"""$request_uri); 
  38. $filename = "$document_root$filename"
  39. if(!$size = filesize($filename)) { 
  40. $size = 0; 
  41. else { 
  42. $size = 0; 
  43.  
  44. $date = gmdate"d/M/Y:H:i:s"); 
  45. $log = "$remote_host $remote_ident $remote_user [$date $timezone] "". 
  46. "$request_method http://$server_name$server_port$request_uri" 200 $sizen"; 
  47.  
  48. write_to_log($log); 
  49. ?> 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论