tbrehm
2012-01-10 e756e7e8a99d604ef85a9630c856bc0ffae2a3f0
server/cron_daily.php
@@ -132,6 +132,8 @@
   $webalizer = '/usr/bin/webalizer';
   $webalizer_conf_main = '/etc/webalizer/webalizer.conf';
   $webalizer_conf = escapeshellcmd($rec['document_root'].'/log/webalizer.conf');
   if(is_file($statsdir.'/index.php')) unlink($statsdir.'/index.php');
   if(!@is_file($webalizer_conf)) {
      copy($webalizer_conf_main,$webalizer_conf);
@@ -152,7 +154,7 @@
// Create awstats statistics
#######################################################################################################
$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE stats_type = 'awstats' AND server_id = ".$conf['server_id'];
$sql = "SELECT domain_id, domain, document_root, system_user, system_group FROM web_domain WHERE stats_type = 'awstats' AND server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
$web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
@@ -178,7 +180,7 @@
   
   if(is_file($awstats_website_conf_file)) unlink($awstats_website_conf_file);
   
   $sql = "SELECT domain FROM web_domain WHERE (type = 'alias' OR AND type = 'subdomain') server_id = ".$conf['server_id'];
   $sql = "SELECT domain FROM web_domain WHERE (type = 'alias' OR type = 'subdomain') server_id = ".$conf['server_id'];
   $aliases = $app->db->queryAllRecords($sql);
   $aliasdomain = '';
   
@@ -200,15 +202,15 @@
   if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log');
   symlink($logfile,'/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log');
   
   $awmonth = date("m");
   if (date("d") == 1)   {
      $awmonth = date("m")-1;
   }
   $awmonth = date("n");
   $awyear = date("Y");
   if (date("m") == 1) {
      $awyear = date("Y")-1;
      $awmonth = "12";
   if (date("d") == 1) {
      $awmonth = date("m")-1;
      if (date("m") == 1) {
         $awyear = date("Y")-1;
         $awmonth = "12";
      }
   }
   
   // awstats_buildstaticpages.pl -update -config=mydomain.com -lang=en -dir=/var/www/domain.com/web/stats -awstatsprog=/path/to/awstats.pl
@@ -227,7 +229,7 @@
      mkdir($statsdirold);
      $files = scandir($statsdir);
      foreach ($files as $file) {
         if (substr($file,0,1) != "." && !is_dir($file) && substr($file,0,1) != "w" && substr($file,0,1) != "i") copy("$statsdir"."/"."$file","$statsdirold"."$file");
         if (substr($file,0,1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file,0,1) != "w" && substr($file,0,1) != "i") copy("$statsdir"."/"."$file","$statsdirold"."$file");
      }
   }
   
@@ -237,6 +239,11 @@
      if(is_file($rec['document_root'].'/web/stats/index.html')) unlink($rec['document_root'].'/web/stats/index.html');
      rename($rec['document_root'].'/web/stats/awstats.'.$domain.'.html',$rec['document_root'].'/web/stats/awsindex.html');
      if(!is_file($rec['document_root']."/web/stats/index.php")) copy("/usr/local/ispconfig/server/conf/awstats_index.php.master",$rec['document_root']."/web/stats/index.php");
      if(is_file($rec['document_root']."/web/stats/index.php")) {
         chown($rec['document_root']."/web/stats/index.php",$rec['system_user']);
         chgrp($rec['document_root']."/web/stats/index.php",$rec['system_group']);
      }
      
      $app->log('Created awstats statistics with command: '.$command,LOGLEVEL_DEBUG);
   } else {
@@ -280,6 +287,15 @@
   if(@is_file($logfile)) {
      unlink($logfile);
   }
   //* Delete older Log files, in case that we missed them before due to serverdowntimes.
   $datepart = date('Ym',time() - 86400 * 31 * 2);
   $logfile = escapeshellcmd($rec['document_root']).'/log/'.$datepart.'*-access.log.gz';
   exec('rm -f '.$logfile);
   $logfile = escapeshellcmd($rec['document_root']).'/log/'.$datepart.'*-access.log';
   exec('rm -f '.$logfile);
}
#######################################################################################################
@@ -395,7 +411,7 @@
   $current_month = date('Y-m');
   //* Check website traffic quota
   $sql = "SELECT sys_groupid,domain_id,domain,traffic_quota,traffic_quota_lock FROM web_domain WHERE traffic_quota > 0 and type = 'vhost'";
   $sql = "SELECT sys_groupid,domain_id,domain,traffic_quota,traffic_quota_lock FROM web_domain WHERE (traffic_quota > 0 or traffic_quota_lock = 'y') and type = 'vhost'";
   $records = $app->db->queryAllRecords($sql);
   if(is_array($records)) {
      foreach($records as $rec) {
@@ -492,12 +508,19 @@
            $web_group = $rec['system_group'];
            $web_id = $rec['domain_id'];
            $web_backup_dir = $backup_dir.'/web'.$web_id;
            if(!is_dir($web_backup_dir)) mkdir($web_backup_dir, 0755);
            chmod($web_backup_dir, 0755);
            chown($web_backup_dir, 'root');
            chgrp($web_backup_dir, 'root');
            if(!is_dir($web_backup_dir)) mkdir($web_backup_dir, 0750);
            chmod($web_backup_dir, 0750);
            if(isset($server_config['backup_dir_ftpread']) && $server_config['backup_dir_ftpread'] == 'y') {
               chown($web_backup_dir, $rec['system_user']);
               chgrp($web_backup_dir, $rec['system_group']);
            } else {
               chown($web_backup_dir, 'root');
               chgrp($web_backup_dir, 'root');
            }
            exec('cd '.escapeshellarg($web_path).' && sudo -u '.escapeshellarg($web_user).' find . -group '.escapeshellarg($web_group).' -print | zip -y '.escapeshellarg($web_backup_dir.'/web.zip').' -@');
            chown($web_backup_dir.'/web.zip', $rec['system_user']);
            chgrp($web_backup_dir.'/web.zip', $rec['system_group']);
            chmod($web_backup_dir.'/web.zip', 0750);
            
            // Rename or remove old backups
            $backup_copies = intval($rec['backup_copies']);
@@ -518,7 +541,9 @@
            // Create backupdir symlink
            if(is_link($web_path.'/backup')) unlink($web_path.'/backup');
            symlink($web_backup_dir,$web_path.'/backup');
            chmod($web_path.'/backup', 0755);
            // chmod($web_path.'/backup', 0755);
            chown($web_path.'/backup', $rec['system_user']);
            chgrp($web_path.'/backup', $rec['system_group']);
            
         }