#!/usr/local/bin/perl # Display the webalizer report for some domain require './virtual-server-lib.pl'; &require_webalizer(); &ReadParse(); $ENV{'PATH_INFO'} =~ /^\/([^\/]+)(\/.*)$/ || &error($webalizer::text{'view_epath'}); $did = $1; $file = $2; $d = &get_domain($did); $log = &get_apache_log($d->{'dom'}, $d->{'web_port'}); $file =~ /\.\./ || $file =~ /\<|\>|\||\0/ && &error($webalizer::text{'view_efile'}); $lconf = &webalizer::get_log_config($log) || &error($webalizer::text{'view_elog'}." : $log"); $full = "$lconf->{'dir'}$file"; open(FILE, $full) || &error($webalizer::text{'view_eopen'}." : $full"); # Display file contents if ($full =~ /\.(html|htm)$/i) { while(read(FILE, $buf, 1024)) { $data .= $buf; } close(FILE); $data =~ /