• File: webalizer.php
  • Full Path: /home/romi/public_html/cgi-bin-20260422142752/webalizer.php
  • Date Modified: 09/25/2006 8:39 AM
  • File size: 1.51 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php 
//dv at josheli.com 

$user = 'romi'; 
$pass = 'romsat98'; 
$url = 'romisatriawahono.net';//do not include 'http://' 

/* 
link spam in the referer list is a growing problem. this will remove that section of the stats. 
to show referers, set this to false 
*/ 
$remove_referers = true; 

//retrieves the webalizer file, either .html or .png 
function getFile($file) 
{ 
  global $user, $pass, $url; 
  return file_get_contents("http://$user:$pass@$url:2082/tmp/$user/webalizer/$file"); 
} 

//alters links, either .html or .png 
function changeLinks($subject, $type) 
{ 
  return preg_replace("/($type=\")(?!http)(.*?)\"/is","$1{$_SERVER['PHP_SELF']}?$2\"", $subject); 
} 

function removeReferers($html)  
{ 
  $html = str_replace('<A HREF="#TOPREFS">[Referrers]</A>', '', $html); 
  $html = preg_replace('@<A NAME="TOPREFS">.*?</TABLE>@is', '', $html);     
  return $html; 
} 

if(!empty($_SERVER['QUERY_STRING'])) 
{ 
  //get file (whether png or html) 
  $page = getFile($_SERVER['QUERY_STRING']); 

  //if png, output appropriate header 
  if(strpos($_SERVER['QUERY_STRING'],'.png')!==false) 
  { 
    header("Content-type: image/png"); 
  } 
  else //change the .png src(s) 
  { 
    $page = changeLinks($page, 'src'); 

    if($remove_referers) 
    { 
      $page = removeReferers($page); 
    } 
  } 
} 
else   //process index page  
{ 
  $page = getFile('index.html'); 

  //change links 
  $page = changeLinks($page, 'href'); 

  //change the usage.png src 
  $page = changeLinks($page, 'src'); 
} 

//output it 
echo $page; 

?>