From cf2c95b8325f964e2acb1302ad782d23622ba164 Mon Sep 17 00:00:00 2001 From: Michael Seevogel Date: Thu, 6 Aug 2020 15:11:41 +0200 Subject: [PATCH 1/5] replaced some more functions by those of ISPConfig --- .../lib/classes/cron.d/150-goaccess.inc.php | 20 +- server/lib/classes/cron.d/symlink | 273 ++++++++++++++++++ server/lib/classes/cron.d/system- | 0 3 files changed, 284 insertions(+), 9 deletions(-) create mode 100644 server/lib/classes/cron.d/symlink create mode 100644 server/lib/classes/cron.d/system- diff --git a/server/lib/classes/cron.d/150-goaccess.inc.php b/server/lib/classes/cron.d/150-goaccess.inc.php index 8c9d764442..5c915e579a 100644 --- a/server/lib/classes/cron.d/150-goaccess.inc.php +++ b/server/lib/classes/cron.d/150-goaccess.inc.php @@ -77,9 +77,8 @@ class cronjob_goaccess extends cronjob { } - /* Check if goaccess binary is in path */ - system("type goaccess 2>&1>/dev/null", $retval); - if ($retval === 0) { + /* Check if goaccess binary is in path/installed */ + if($app->system->is_installed('goaccess')) { foreach($records as $rec) { $yesterday = date('Ymd', strtotime("-1 day", time())); @@ -118,7 +117,7 @@ class cronjob_goaccess extends cronjob { } elseif(!file_exists($goaccess_conf)) { /* By default the goaccess.conf should get copied by the webserver plugin but in case it wasn't, or it got deleted by accident we gonna copy it again to the destination dir. - Also there was no /usr/local/ispconfig/server/conf-custom/goaccess.conf.master, so we gonna use /etc/goaccess.conf as the base conf. + Also there was no /usr/local/ispconfig/server/conf-custom/goaccess.conf.master, so we gonna use /etc/goaccess.conf or /etc/goaccess/goaccess.conf as the base conf. */ $app->system->copy($goaccess_conf_main, $goaccess_conf); @@ -147,8 +146,7 @@ class cronjob_goaccess extends cronjob { if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); - symlink($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); - + $app->system->create_relative_link($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); @@ -178,7 +176,11 @@ class cronjob_goaccess extends cronjob { // don't rotate db files per month //rename($goa_db_dir, $statsdirold.'db'); - //mkdir($goa_db_dir); + //mkdir($goa_db_dir); + + $app->system->copy($output_html, $statsdirold); + $app->system->unlink($output_html); + $files = scandir($statsdir); @@ -228,8 +230,8 @@ class cronjob_goaccess extends cronjob { $app->log('Created GoAccess statistics for ' . $domain, LOGLEVEL_DEBUG); if(is_file($rec['document_root']."/".$web_folder."/stats/index.php")) { - chown($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_user']); - chgrp($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_group']); + $app->system->chown($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_user']); + $app->system->chgrp($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_group']); } $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); diff --git a/server/lib/classes/cron.d/symlink b/server/lib/classes/cron.d/symlink new file mode 100644 index 0000000000..5d73153c46 --- /dev/null +++ b/server/lib/classes/cron.d/symlink @@ -0,0 +1,273 @@ +100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +100-mailbox_stats.inc.php: $tr = $app->dbmaster->queryOneRecord($sql, $rec['mailuser_id']); +100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $mail_traffic, $tr['traffic_id']); +100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $tstamp, $rec['mailuser_id'], $mail_traffic); +100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +100-mailbox_stats.inc.php: $tr = $app->dbmaster->queryOneRecord($sql, $tstamp, $rec['mailuser_id']); +100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $mail_traffic, $tr['traffic_id']); +100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $tstamp, $rec['mailuser_id'], $mail_traffic); +100-monitor_clamav_log.inc.php: $app->load('monitor_tools'); +100-monitor_clamav_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_clamav_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_cpu.inc.php: $app->load('monitor_tools'); +100-monitor_cpu.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_database_size.inc.php: $app->load('monitor_tools'); +100-monitor_database_size.inc.php: $databases = $app->db->queryAllRecords("SELECT database_id, database_name, sys_groupid, database_quota, quota_exceeded FROM web_database WHERE server_id = ? GROUP BY sys_groupid, database_name ASC", $server_id); +100-monitor_database_size.inc.php: $data[$i]['size'] = $app->db->getDatabaseSize($rec['database_name']); +100-monitor_database_size.inc.php: $app->dbmaster->datalogUpdate('web_database', array('quota_exceeded' => 'n'), 'database_id', $rec['database_id']); +100-monitor_database_size.inc.php: $app->dbmaster->datalogUpdate('web_database', array('quota_exceeded' => 'y'), 'database_id', $rec['database_id']); +100-monitor_database_size.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_disk_usage.inc.php: $app->load('monitor_tools'); +100-monitor_disk_usage.inc.php: $app->uses('getconf'); +100-monitor_disk_usage.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); +100-monitor_disk_usage.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_email_quota.inc.php: $app->uses('getconf'); +100-monitor_email_quota.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); +100-monitor_email_quota.inc.php: $app->load('monitor_tools'); +100-monitor_email_quota.inc.php: $mailboxes = $app->db->queryAllRecords("SELECT email,maildir FROM mail_user WHERE server_id = ?", $server_id); +100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); +100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); +100-monitor_email_quota.inc.php: $app->system->exec_safe('du -s ?', $mb['maildir']); +100-monitor_email_quota.inc.php: $out = $app->system->last_exec_out(); +100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); +100-monitor_email_quota.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_fail2ban.inc.php: $app->load('monitor_tools'); +100-monitor_fail2ban.inc.php: if ($app->system->is_installed('fail2ban-client') // Debian, Ubuntu, Fedora +100-monitor_fail2ban.inc.php: || $app->system->is_installed('fail2ban')) { // CentOS +100-monitor_fail2ban.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_hd_quota.inc.php: $app->load('monitor_tools'); +100-monitor_hd_quota.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_iptables.inc.php: $app->load('monitor_tools'); +100-monitor_iptables.inc.php: if ($app->system->is_installed('iptables')) { +100-monitor_iptables.inc.php: if ($app->system->is_installed('ip6tables')) { +100-monitor_iptables.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_ispconfig_log.inc.php: $app->load('monitor_tools'); +100-monitor_ispconfig_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_ispconfig_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_ispconfig_version.inc.php: $app->load('monitor_tools'); +100-monitor_ispconfig_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_kernel_version.inc.php: $app->load('monitor_tools'); +100-monitor_kernel_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mail_log.inc.php: $app->load('monitor_tools'); +100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mail_queue.inc.php: $app->load('monitor_tools'); +100-monitor_mail_queue.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mem_usage.inc.php: $app->load('monitor_tools'); +100-monitor_mem_usage.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_mongodb.inc.php~: $app->load('monitor_tools'); +100-monitor_mongodb.inc.php~: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_openvz.inc.php: $app->load('monitor_tools'); +100-monitor_openvz.inc.php: $app->load('openvz_tools'); +100-monitor_openvz.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_openvz.inc.php: $app->load('openvz_tools'); +100-monitor_openvz.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_os_version.inc.php: $app->load('monitor_tools'); +100-monitor_os_version.inc.php: $server_id = $app->functions->intval($conf['server_id']); +100-monitor_os_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_raid.inc.php: $app->load('monitor_tools'); +100-monitor_raid.inc.php: if ($app->system->is_installed('mpt-status')) { +100-monitor_raid.inc.php: if($app->system->is_installed('tw_cli')) { +100-monitor_raid.inc.php: if($app->system->is_installed('hpacucli')) { +100-monitor_raid.inc.php: if ($app->system->is_installed('megacli')) { +100-monitor_raid.inc.php: if ($app->system->is_installed('megacli64')) { +100-monitor_raid.inc.php: if($app->system->is_installed('arcconf')) { +100-monitor_raid.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_rkhunter.inc.php: $app->load('monitor_tools'); +100-monitor_rkhunter.inc.php: if ($app->system->is_installed('rkhunter')) { +100-monitor_rkhunter.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_server.inc.php: $app->load('monitor_tools'); +100-monitor_server.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_services.inc.php: $app->load('monitor_tools'); +100-monitor_services.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_syslog.inc.php: $app->load('monitor_tools'); +100-monitor_syslog.inc.php: $dbData = $app->dbmaster->queryAllRecords('SELECT loglevel FROM sys_log WHERE server_id = ? AND loglevel > 0', $server_id); +100-monitor_syslog.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_syslog.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +100-monitor_system_update.inc.php: $app->uses('getconf'); +100-monitor_system_update.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); +100-monitor_system_update.inc.php: $app->load('monitor_tools'); +100-monitor_system_update.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); +150-awstats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +150-awstats.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); +150-awstats.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); +150-awstats.inc.php: $aliases = $app->db->queryAllRecords($sql, $rec['domain_id']); +150-awstats.inc.php: $app->log("No awstats base config found. Either awstats.conf or awstats.model.conf must exist in ".$awstats_conf_dir.".", LOGLEVEL_WARN); +150-awstats.inc.php: $app->log('Created awstats statistics with command: '.$command, LOGLEVEL_DEBUG); +150-awstats.inc.php: $app->log("No awstats statistics created. Either $awstats_pl or $awstats_buildstaticpages_pl is not owned by root user.", LOGLEVEL_WARN); +150-awstats.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); +150-goaccess.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +150-goaccess.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); +150-goaccess.inc.php: $app->log("No GoAccess base config found. Make sure that GoAccess is installed and that the goaccess.conf does exist in /etc or /etc/goaccess", LOGLEVEL_ERROR); +150-goaccess.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); +150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master", $goaccess_conf); +150-goaccess.inc.php: $app->system->copy($goaccess_conf_main, $goaccess_conf); +150-goaccess.inc.php: $content = $app->system->file_get_contents($goaccess_conf, true); +150-goaccess.inc.php: $app->system->file_put_contents($goaccess_conf, $content, true); +150-goaccess.inc.php: $content = $app->system->file_get_contents($goaccess_conf, true); +150-goaccess.inc.php: $app->system->file_put_contents($goaccess_conf, $content, true); +150-goaccess.inc.php: if(!@is_dir($statsdir)) $app->system->mkdirpath($statsdir, 0755, $username, $groupname); +150-goaccess.inc.php: if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); +150-goaccess.inc.php: if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); +150-goaccess.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); +150-goaccess.inc.php: $app->system->mkdirpath($statsdirold, 0755, $username, $groupname); +150-goaccess.inc.php: if (substr($file, 0, 1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file, 0, 1) != "w" && substr($file, 0, 1) != "i") $app->system->copy("$statsdir"."/"."$file", "$statsdirold"."$file"); +150-goaccess.inc.php: $goaccess_version = $app->system->system_safe('goaccess --version 2>&1'); +150-goaccess.inc.php: $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --restore --persist --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); +150-goaccess.inc.php: $output = $app->system->system_safe('goaccess --help 2>&1'); +150-goaccess.inc.php: $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --load-from-disk --keep-db-files --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); +150-goaccess.inc.php: $app->log("Stats not generated. The GoAccess binary was not compiled with btree support. Please recompile/reinstall GoAccess with btree support, or install GoAccess version >= 1.4!", LOGLEVEL_ERROR); +150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); +150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); +150-goaccess.inc.php: $app->log('Created GoAccess statistics for ' . $domain, LOGLEVEL_DEBUG); +150-goaccess.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); +150-goaccess.inc.php: $app->log("Stats not generated. The GoAccess binary couldn't be found. Make sure that GoAccess is installed and that it is in \$PATH", LOGLEVEL_ERROR); +150-webalizer.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +150-webalizer.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); +150-webalizer.inc.php: $app->system->exec_safe("$webalizer -c ? -n ? -s ? -r ? -q -T -p -o ? ?", $webalizer_conf, $domain, $domain, $domain, $statsdir, $logfile); +150-webalizer.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); +200-ftplogfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +200-ftplogfiles.inc.php: $temp = $app->db->queryOneRecord($sql, $parsed_line['username'] ); +200-ftplogfiles.inc.php: $tmp = $app->dbmaster->queryOneRecord($sql1, $hostname , $traffic_date); +200-ftplogfiles.inc.php: $resultat = $app->dbmaster->query($sql, $traffic['in'], $traffic['out'], $hostname, $traffic_date ); +200-logfiles.inc.php: $app->uses('getconf'); +200-logfiles.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); +200-logfiles.inc.php: $max_syslog = $app->functions->intval($server_config['log_retention']); +200-logfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +200-logfiles.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); +200-logfiles.inc.php: $tmp = $app->dbmaster->queryOneRecord("select hostname from web_traffic where hostname=? and traffic_date=?", $rec['domain'], $traffic_date); +200-logfiles.inc.php: $app->dbmaster->query($sql, $total_bytes, $rec['domain'], $traffic_date); +200-logfiles.inc.php: $app->dbmaster->query($sql, $rec['domain'], $traffic_date, $total_bytes); +200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $logfile, $logfile . '.gz'); +200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $cron_logfile, $cron_logfile . '.1.gz'); +200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $cron_logfile); +200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $error_logfile, $error_logfile . '.1.gz'); +200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $error_logfile); +200-logfiles.inc.php: $app->system->exec_safe("cd ?; find . -mtime +$max_syslog -name '*.log' | xargs rm > /dev/null 2> /dev/null", '/var/log/ispconfig/httpd/'.$tmp_hostname[0]); +200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $ispconfig_logfile, $ispconfig_logfile . '.1.gz'); +200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $ispconfig_logfile); +200-logfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); +200-logfiles.inc.php: $app->uses('system'); +200-logfiles.inc.php: if($tmp_path != '' && strlen($tmp_path) > 10 && is_dir($tmp_path) && $app->system->is_user($rec['system_user'])){ +200-logfiles.inc.php: $app->system->exec_safe("cd ?; find . -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null", $tmp_path); +200-logfiles.inc.php: if ($app->dbmaster == $app->db) { +200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp); +200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp); +200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp - (3600 * 24 * 23)); +200-logfiles.inc.php: $res = $app->dbmaster->queryOneRecord($sql); +200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp, $maxId); +200-logfiles.inc.php: $records = $app->dbmaster->queryAllRecords($sql); +200-logfiles.inc.php: $res = $app->dbmaster->queryOneRecord($sql); +200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp, $server['server_id'], $server['updated'], $maxId); +300-quota_notify.inc.php: $app->load('monitor_tools'); +300-quota_notify.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); +300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { +300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); +300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); +300-quota_notify.inc.php: $tmp = $app->db->queryOneRecord("SELECT SUM(traffic_bytes) As total_traffic_bytes FROM web_traffic WHERE traffic_date like '$current_month%' AND hostname = '$domain'"); +300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("traffic_quota_lock" => 'y', "active" => 'n'), 'domain_id', $rec['domain_id']); +300-quota_notify.inc.php: $app->log('Traffic quota for '.$rec['domain'].' exceeded. Disabling website.', LOGLEVEL_DEBUG); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); +300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("traffic_quota_lock" => 'n', "active" => 'y'), 'domain_id', $rec['domain_id']); +300-quota_notify.inc.php: $app->log('Traffic quota for '.$rec['domain'].' ok again. Re-enabling website.', LOGLEVEL_DEBUG); +300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { +300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); +300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); +300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'harddisk_quota' ORDER BY created DESC"); +300-quota_notify.inc.php: $monitor_data = array_merge_recursive($monitor_data, unserialize($app->db->unquote($tmp_mon['data']))); +300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('web_domain', array("last_quota_notification" => null), 'domain_id', $rec['domain_id']); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); +300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'domain_id', $rec['domain_id']); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); +300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { +300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); +300-quota_notify.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); +300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); +300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'email_quota' ORDER BY created DESC"); +300-quota_notify.inc.php: //$monitor_data = array_merge_recursive($monitor_data,unserialize($app->db->unquote($tmp_mon['data']))); +300-quota_notify.inc.php: $tmp_array = unserialize($app->db->unquote($tmp_mon['data'])); +300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('mail_user', array("last_quota_notification" => null), 'mailuser_id', $rec['mailuser_id']); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); +300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('mail_user', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'mailuser_id', $rec['mailuser_id']); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); +300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { +300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); +300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'database_size' ORDER BY created DESC"); +300-quota_notify.inc.php: $tmp_array = unserialize($app->db->unquote($tmp_mon['data'])); +300-quota_notify.inc.php: $database_records = $app->db->queryAllRecords("SELECT database_id,sys_groupid,database_name,database_quota,last_quota_notification,DATEDIFF(CURDATE(), last_quota_notification) as `notified_before` FROM web_database"); +300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.username, client.email FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name=?", $database); +300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'database_id', $rec['database_id']); +300-quota_notify.inc.php: '{used}' => $app->functions->formatBytes($monitor['size']), +300-quota_notify.inc.php: '{quota}' => $app->functions->formatBytes($quota), +300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => null), 'database_id', $rec['database_id']); +300-quota_notify.inc.php: '{used}' => $app->functions->formatBytes($monitor['size']), +300-quota_notify.inc.php: '{quota}' => $app->functions->formatBytes($quota), +400-openvz.inc.php: if ($app->dbmaster == $app->db) { +400-openvz.inc.php: $records = $app->db->queryAllRecords($sql); +400-openvz.inc.php: $app->dbmaster->datalogUpdate('openvz_vm', array("active" => 'n'), 'vm_id', $rec['vm_id']); +400-openvz.inc.php: $app->log('Virtual machine active date expired. Disabling VM '.$rec['veid'], LOGLEVEL_DEBUG); +500-backup.inc.php: $app->load("backup"); +500-backup_mail.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); +500-backup_mail.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); +500-backup_mail.inc.php: $global_config = $app->getconf->get_global_config('sites'); +500-backup_mail.inc.php: if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $run_backups = false; +500-backup_mail.inc.php: $records = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ? AND maildir != ''", intval($conf['server_id'])); +500-backup_mail.inc.php: if($app->system->is_installed('pigz')) { +500-backup_mail.inc.php: $domain_rec=$app->db->queryOneRecord("SELECT * FROM mail_domain WHERE domain = ?", $domain); +500-backup_mail.inc.php: $webdomain = $app->db->queryOneRecord($sql, $domain_rec['domain']); +500-backup_mail.inc.php: $webdomain = $app->db->queryOneRecord($sql, $webdomain['parent_domain_id']); +500-backup_mail.inc.php: $app->system->exec_safe("su -c ?", 'dsync backup -u "'.$rec["email"].'" mdbox:' . $this->tmp_backup_dir . '/backup'); +500-backup_mail.inc.php: $app->system->exec_safe('cd ? && zip ? -b ? -r backup > /dev/null && rm -rf backup', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp); +500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); +500-backup_mail.inc.php: $app->system->exec_safe('tar pcf - --directory ? backup | pigz > ? && rm -rf ?', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir.'/backup'); +500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); +500-backup_mail.inc.php: $app->system->exec_safe('tar pczf ? --directory ? backup && rm -rf ?', $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir, $this->tmp_backup_dir.'/backup'); +500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); +500-backup_mail.inc.php: $app->system->exec_safe('rm -rf ?', $this->tmp_backup_dir . '/backup'); +500-backup_mail.inc.php: $app->system->exec_safe('cd ? && zip ? -b ? -r ? > /dev/null', $domain_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp, $source_dir); +500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); +500-backup_mail.inc.php: $app->system->exec_safe('tar pcf - --directory ? ? | pigz > ?', $domain_dir, $source_dir, $mail_backup_dir.'/'.$mail_backup_file); +500-backup_mail.inc.php: $app->system->exec_safe('tar pczf ? --directory ? ?', $mail_backup_dir.'/'.$mail_backup_file, $domain_dir, $source_dir); +500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); +500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id'], $backup_mode, time(), $mail_backup_file, $filesize); +500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id'], $backup_mode, time(), $mail_backup_file, $filesize); +500-backup_mail.inc.php: $app->system->exec_safe('rm -rf ?', $rec['maildir'] . '/backup'); +500-backup_mail.inc.php: $app->log($mail_backup_file.' NOK:'.implode('',$tmp_output), LOGLEVEL_WARN); +500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $files[$n]); +500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $files[$n]); +500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id']); +500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id']); +500-backup_mail.inc.php: $backups = $app->db->queryAllRecords("SELECT * FROM mail_backup WHERE server_id = ?", $conf['server_id']); +500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $backup['parent_domain_id'], $backup['filename']); +500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $backup['parent_domain_id'], $backup['filename']); +500-backup_mail.inc.php: if( $server_config['backup_dir_is_mount'] == 'y' ) $app->system->umount_backup_dir($backup_dir); +500-clean_mailboxes.inc.php: $records = $app->db->queryAllRecords("SELECT email, maildir, purge_trash_days, purge_junk_days FROM mail_user WHERE maildir_format = 'maildir' AND disableimap = 'n' AND server_id = ? AND (purge_trash_days > 0 OR purge_junk_days > 0)", $server_id); +500-clean_mailboxes.inc.php: $app->system->exec_safe($purge_cmd.intval($email['purge_trash_days']).'d', $email['email'], $trash); +500-clean_mailboxes.inc.php: $app->system->exec_safe($purge_cmd.intval($email['purge_junk_days']).'d', $email['email'], $junk); +500-clean_mailboxes.inc.php: $app->system->exec_safe($recalc_cmd, $email['email']); +550-bind_dnssec.inc.php: $serial_date = $app->functions->intval(substr($serial, 0, 8)); +550-bind_dnssec.inc.php: $count = $app->functions->intval(substr($serial, 8, 2)); +550-bind_dnssec.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) return; +550-bind_dnssec.inc.php: $app->uses("getconf,tpl"); +550-bind_dnssec.inc.php:// $dns_config = $app->getconf->get_server_config($conf["server_id"], 'dns'); +550-bind_dnssec.inc.php:// $soas = $app->db->queryAllRecords("SELECT id,serial,origin FROM dns_soa WHERE server_id = ? AND active= 'Y' AND dnssec_wanted = 'Y' AND dnssec_initialized = 'Y' AND (dnssec_last_signed < ? OR dnssec_last_signed > ?)", $conf['server_id'], time()-(3600*24*5)+900, time()+900); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance) +550-bind_dnssec.inc.php: $soas = $app->db->queryAllRecords("SELECT id,serial,origin FROM dns_soa WHERE active= 'Y' AND dnssec_wanted = 'Y' AND dnssec_initialized = 'Y' AND (dnssec_last_signed < ? OR dnssec_last_signed > ?)", time()-(3600*24*5)+900, time()+900); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance) +550-bind_dnssec.inc.php: $app->log('DNSSEC Auto-Resign: Touching zone '.$domain, LOGLEVEL_DEBUG); +550-bind_dnssec.inc.php: $app->db->datalogUpdate('dns_soa', array("serial" => $this->increase_serial($data['serial'])), 'id', $data['id']); +600-cleanup.inc.php: $records = $app->db->queryAllRecords("SELECT s.instance_id, s.name, s.value FROM `aps_instances_settings` as s INNER JOIN `aps_instances` as i ON (i.id = s.instance_id) WHERE s.value != '' AND s.name IN ('main_database_password', 'admin_password') AND i.instance_status > 1"); +600-cleanup.inc.php: $tmp = $app->db->queryOneRecord("SELECT id FROM aps_instances_settings WHERE instance_id = ? AND name = ?", $rec['instance_id'], $rec['name']); +600-cleanup.inc.php: $app->db->datalogUpdate('aps_instances_settings', array("value" => ''), 'id', $tmp['id']); +600-purge_mailboxes.inc.php: $records = $app->db->queryAllRecords($sql, $server_id); +600-purge_mailboxes.inc.php: $app->system->exec_safe("su -c ?", 'doveadm purge -u "' . $rec["email"] . '"'); +900-letsencrypt.inc.php: $app->modules->loadModules('web_module'); +900-letsencrypt.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); +900-letsencrypt.inc.php: $acme = $app->letsencrypt->get_acme_script(); +900-letsencrypt.inc.php: $letsencrypt = $app->letsencrypt->get_certbot_script(); +900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); +900-letsencrypt.inc.php: $app->system->exec_safe($letsencrypt . ' -n renew --post-hook ?', $cmd); +900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); +900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); +900-letsencrypt.inc.php: $app->log('Migration mode active, not running Let\'s Encrypt renewal.', LOGLEVEL_DEBUG); diff --git a/server/lib/classes/cron.d/system- b/server/lib/classes/cron.d/system- new file mode 100644 index 0000000000..e69de29bb2 -- GitLab From ebeeba757271da7c0628d86f4c41557dc023d5b1 Mon Sep 17 00:00:00 2001 From: Michael Seevogel Date: Thu, 6 Aug 2020 15:12:27 +0200 Subject: [PATCH 2/5] clean up --- server/lib/classes/cron.d/symlink | 273 ------------------------------ server/lib/classes/cron.d/system- | 0 2 files changed, 273 deletions(-) delete mode 100644 server/lib/classes/cron.d/symlink delete mode 100644 server/lib/classes/cron.d/system- diff --git a/server/lib/classes/cron.d/symlink b/server/lib/classes/cron.d/symlink deleted file mode 100644 index 5d73153c46..0000000000 --- a/server/lib/classes/cron.d/symlink +++ /dev/null @@ -1,273 +0,0 @@ -100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -100-mailbox_stats.inc.php: $tr = $app->dbmaster->queryOneRecord($sql, $rec['mailuser_id']); -100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $mail_traffic, $tr['traffic_id']); -100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $tstamp, $rec['mailuser_id'], $mail_traffic); -100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -100-mailbox_stats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -100-mailbox_stats.inc.php: $tr = $app->dbmaster->queryOneRecord($sql, $tstamp, $rec['mailuser_id']); -100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $mail_traffic, $tr['traffic_id']); -100-mailbox_stats.inc.php: $app->dbmaster->query($sql, $tstamp, $rec['mailuser_id'], $mail_traffic); -100-monitor_clamav_log.inc.php: $app->load('monitor_tools'); -100-monitor_clamav_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_clamav_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_cpu.inc.php: $app->load('monitor_tools'); -100-monitor_cpu.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_database_size.inc.php: $app->load('monitor_tools'); -100-monitor_database_size.inc.php: $databases = $app->db->queryAllRecords("SELECT database_id, database_name, sys_groupid, database_quota, quota_exceeded FROM web_database WHERE server_id = ? GROUP BY sys_groupid, database_name ASC", $server_id); -100-monitor_database_size.inc.php: $data[$i]['size'] = $app->db->getDatabaseSize($rec['database_name']); -100-monitor_database_size.inc.php: $app->dbmaster->datalogUpdate('web_database', array('quota_exceeded' => 'n'), 'database_id', $rec['database_id']); -100-monitor_database_size.inc.php: $app->dbmaster->datalogUpdate('web_database', array('quota_exceeded' => 'y'), 'database_id', $rec['database_id']); -100-monitor_database_size.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_disk_usage.inc.php: $app->load('monitor_tools'); -100-monitor_disk_usage.inc.php: $app->uses('getconf'); -100-monitor_disk_usage.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); -100-monitor_disk_usage.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_email_quota.inc.php: $app->uses('getconf'); -100-monitor_email_quota.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); -100-monitor_email_quota.inc.php: $app->load('monitor_tools'); -100-monitor_email_quota.inc.php: $mailboxes = $app->db->queryAllRecords("SELECT email,maildir FROM mail_user WHERE server_id = ?", $server_id); -100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); -100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); -100-monitor_email_quota.inc.php: $app->system->exec_safe('du -s ?', $mb['maildir']); -100-monitor_email_quota.inc.php: $out = $app->system->last_exec_out(); -100-monitor_email_quota.inc.php: $app->log("Mail storage $email: " . $data[$email]['used'], LOGLEVEL_DEBUG); -100-monitor_email_quota.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_fail2ban.inc.php: $app->load('monitor_tools'); -100-monitor_fail2ban.inc.php: if ($app->system->is_installed('fail2ban-client') // Debian, Ubuntu, Fedora -100-monitor_fail2ban.inc.php: || $app->system->is_installed('fail2ban')) { // CentOS -100-monitor_fail2ban.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_hd_quota.inc.php: $app->load('monitor_tools'); -100-monitor_hd_quota.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_iptables.inc.php: $app->load('monitor_tools'); -100-monitor_iptables.inc.php: if ($app->system->is_installed('iptables')) { -100-monitor_iptables.inc.php: if ($app->system->is_installed('ip6tables')) { -100-monitor_iptables.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_ispconfig_log.inc.php: $app->load('monitor_tools'); -100-monitor_ispconfig_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_ispconfig_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_ispconfig_version.inc.php: $app->load('monitor_tools'); -100-monitor_ispconfig_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_kernel_version.inc.php: $app->load('monitor_tools'); -100-monitor_kernel_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mail_log.inc.php: $app->load('monitor_tools'); -100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mail_log.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mail_queue.inc.php: $app->load('monitor_tools'); -100-monitor_mail_queue.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mem_usage.inc.php: $app->load('monitor_tools'); -100-monitor_mem_usage.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_mongodb.inc.php~: $app->load('monitor_tools'); -100-monitor_mongodb.inc.php~: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_openvz.inc.php: $app->load('monitor_tools'); -100-monitor_openvz.inc.php: $app->load('openvz_tools'); -100-monitor_openvz.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_openvz.inc.php: $app->load('openvz_tools'); -100-monitor_openvz.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_os_version.inc.php: $app->load('monitor_tools'); -100-monitor_os_version.inc.php: $server_id = $app->functions->intval($conf['server_id']); -100-monitor_os_version.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_raid.inc.php: $app->load('monitor_tools'); -100-monitor_raid.inc.php: if ($app->system->is_installed('mpt-status')) { -100-monitor_raid.inc.php: if($app->system->is_installed('tw_cli')) { -100-monitor_raid.inc.php: if($app->system->is_installed('hpacucli')) { -100-monitor_raid.inc.php: if ($app->system->is_installed('megacli')) { -100-monitor_raid.inc.php: if ($app->system->is_installed('megacli64')) { -100-monitor_raid.inc.php: if($app->system->is_installed('arcconf')) { -100-monitor_raid.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_rkhunter.inc.php: $app->load('monitor_tools'); -100-monitor_rkhunter.inc.php: if ($app->system->is_installed('rkhunter')) { -100-monitor_rkhunter.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_server.inc.php: $app->load('monitor_tools'); -100-monitor_server.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_services.inc.php: $app->load('monitor_tools'); -100-monitor_services.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_syslog.inc.php: $app->load('monitor_tools'); -100-monitor_syslog.inc.php: $dbData = $app->dbmaster->queryAllRecords('SELECT loglevel FROM sys_log WHERE server_id = ? AND loglevel > 0', $server_id); -100-monitor_syslog.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_syslog.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -100-monitor_system_update.inc.php: $app->uses('getconf'); -100-monitor_system_update.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); -100-monitor_system_update.inc.php: $app->load('monitor_tools'); -100-monitor_system_update.inc.php: $app->dbmaster->query($sql, $res['server_id'], $res['type'], serialize($res['data']), $res['state']); -150-awstats.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -150-awstats.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); -150-awstats.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); -150-awstats.inc.php: $aliases = $app->db->queryAllRecords($sql, $rec['domain_id']); -150-awstats.inc.php: $app->log("No awstats base config found. Either awstats.conf or awstats.model.conf must exist in ".$awstats_conf_dir.".", LOGLEVEL_WARN); -150-awstats.inc.php: $app->log('Created awstats statistics with command: '.$command, LOGLEVEL_DEBUG); -150-awstats.inc.php: $app->log("No awstats statistics created. Either $awstats_pl or $awstats_buildstaticpages_pl is not owned by root user.", LOGLEVEL_WARN); -150-awstats.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); -150-goaccess.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -150-goaccess.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); -150-goaccess.inc.php: $app->log("No GoAccess base config found. Make sure that GoAccess is installed and that the goaccess.conf does exist in /etc or /etc/goaccess", LOGLEVEL_ERROR); -150-goaccess.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); -150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master", $goaccess_conf); -150-goaccess.inc.php: $app->system->copy($goaccess_conf_main, $goaccess_conf); -150-goaccess.inc.php: $content = $app->system->file_get_contents($goaccess_conf, true); -150-goaccess.inc.php: $app->system->file_put_contents($goaccess_conf, $content, true); -150-goaccess.inc.php: $content = $app->system->file_get_contents($goaccess_conf, true); -150-goaccess.inc.php: $app->system->file_put_contents($goaccess_conf, $content, true); -150-goaccess.inc.php: if(!@is_dir($statsdir)) $app->system->mkdirpath($statsdir, 0755, $username, $groupname); -150-goaccess.inc.php: if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); -150-goaccess.inc.php: if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); -150-goaccess.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); -150-goaccess.inc.php: $app->system->mkdirpath($statsdirold, 0755, $username, $groupname); -150-goaccess.inc.php: if (substr($file, 0, 1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file, 0, 1) != "w" && substr($file, 0, 1) != "i") $app->system->copy("$statsdir"."/"."$file", "$statsdirold"."$file"); -150-goaccess.inc.php: $goaccess_version = $app->system->system_safe('goaccess --version 2>&1'); -150-goaccess.inc.php: $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --restore --persist --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); -150-goaccess.inc.php: $output = $app->system->system_safe('goaccess --help 2>&1'); -150-goaccess.inc.php: $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --load-from-disk --keep-db-files --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); -150-goaccess.inc.php: $app->log("Stats not generated. The GoAccess binary was not compiled with btree support. Please recompile/reinstall GoAccess with btree support, or install GoAccess version >= 1.4!", LOGLEVEL_ERROR); -150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); -150-goaccess.inc.php: $app->system->copy("/usr/local/ispconfig/server/conf/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); -150-goaccess.inc.php: $app->log('Created GoAccess statistics for ' . $domain, LOGLEVEL_DEBUG); -150-goaccess.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); -150-goaccess.inc.php: $app->log("Stats not generated. The GoAccess binary couldn't be found. Make sure that GoAccess is installed and that it is in \$PATH", LOGLEVEL_ERROR); -150-webalizer.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -150-webalizer.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); -150-webalizer.inc.php: $app->system->exec_safe("$webalizer -c ? -n ? -s ? -r ? -q -T -p -o ? ?", $webalizer_conf, $domain, $domain, $domain, $statsdir, $logfile); -150-webalizer.inc.php: $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); -200-ftplogfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -200-ftplogfiles.inc.php: $temp = $app->db->queryOneRecord($sql, $parsed_line['username'] ); -200-ftplogfiles.inc.php: $tmp = $app->dbmaster->queryOneRecord($sql1, $hostname , $traffic_date); -200-ftplogfiles.inc.php: $resultat = $app->dbmaster->query($sql, $traffic['in'], $traffic['out'], $hostname, $traffic_date ); -200-logfiles.inc.php: $app->uses('getconf'); -200-logfiles.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); -200-logfiles.inc.php: $max_syslog = $app->functions->intval($server_config['log_retention']); -200-logfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -200-logfiles.inc.php: $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); -200-logfiles.inc.php: $tmp = $app->dbmaster->queryOneRecord("select hostname from web_traffic where hostname=? and traffic_date=?", $rec['domain'], $traffic_date); -200-logfiles.inc.php: $app->dbmaster->query($sql, $total_bytes, $rec['domain'], $traffic_date); -200-logfiles.inc.php: $app->dbmaster->query($sql, $rec['domain'], $traffic_date, $total_bytes); -200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $logfile, $logfile . '.gz'); -200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $cron_logfile, $cron_logfile . '.1.gz'); -200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $cron_logfile); -200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $error_logfile, $error_logfile . '.1.gz'); -200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $error_logfile); -200-logfiles.inc.php: $app->system->exec_safe("cd ?; find . -mtime +$max_syslog -name '*.log' | xargs rm > /dev/null 2> /dev/null", '/var/log/ispconfig/httpd/'.$tmp_hostname[0]); -200-logfiles.inc.php: $app->system->exec_safe("gzip -c ? > ?", $ispconfig_logfile, $ispconfig_logfile . '.1.gz'); -200-logfiles.inc.php: $app->system->exec_safe("cat /dev/null > ?", $ispconfig_logfile); -200-logfiles.inc.php: $records = $app->db->queryAllRecords($sql, $conf['server_id']); -200-logfiles.inc.php: $app->uses('system'); -200-logfiles.inc.php: if($tmp_path != '' && strlen($tmp_path) > 10 && is_dir($tmp_path) && $app->system->is_user($rec['system_user'])){ -200-logfiles.inc.php: $app->system->exec_safe("cd ?; find . -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null", $tmp_path); -200-logfiles.inc.php: if ($app->dbmaster == $app->db) { -200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp); -200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp); -200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp - (3600 * 24 * 23)); -200-logfiles.inc.php: $res = $app->dbmaster->queryOneRecord($sql); -200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp, $maxId); -200-logfiles.inc.php: $records = $app->dbmaster->queryAllRecords($sql); -200-logfiles.inc.php: $res = $app->dbmaster->queryOneRecord($sql); -200-logfiles.inc.php: $app->dbmaster->query($sql, $tstamp, $server['server_id'], $server['updated'], $maxId); -300-quota_notify.inc.php: $app->load('monitor_tools'); -300-quota_notify.inc.php: $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); -300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { -300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); -300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); -300-quota_notify.inc.php: $tmp = $app->db->queryOneRecord("SELECT SUM(traffic_bytes) As total_traffic_bytes FROM web_traffic WHERE traffic_date like '$current_month%' AND hostname = '$domain'"); -300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("traffic_quota_lock" => 'y', "active" => 'n'), 'domain_id', $rec['domain_id']); -300-quota_notify.inc.php: $app->log('Traffic quota for '.$rec['domain'].' exceeded. Disabling website.', LOGLEVEL_DEBUG); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); -300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("traffic_quota_lock" => 'n', "active" => 'y'), 'domain_id', $rec['domain_id']); -300-quota_notify.inc.php: $app->log('Traffic quota for '.$rec['domain'].' ok again. Re-enabling website.', LOGLEVEL_DEBUG); -300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { -300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); -300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); -300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'harddisk_quota' ORDER BY created DESC"); -300-quota_notify.inc.php: $monitor_data = array_merge_recursive($monitor_data, unserialize($app->db->unquote($tmp_mon['data']))); -300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('web_domain', array("last_quota_notification" => null), 'domain_id', $rec['domain_id']); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); -300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_domain', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'domain_id', $rec['domain_id']); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); -300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { -300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); -300-quota_notify.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); -300-quota_notify.inc.php: $records = $app->db->queryAllRecords($sql); -300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'email_quota' ORDER BY created DESC"); -300-quota_notify.inc.php: //$monitor_data = array_merge_recursive($monitor_data,unserialize($app->db->unquote($tmp_mon['data']))); -300-quota_notify.inc.php: $tmp_array = unserialize($app->db->unquote($tmp_mon['data'])); -300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('mail_user', array("last_quota_notification" => null), 'mailuser_id', $rec['mailuser_id']); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); -300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('mail_user', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'mailuser_id', $rec['mailuser_id']); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); -300-quota_notify.inc.php: if ($app->dbmaster == $app->db) { -300-quota_notify.inc.php: $global_config = $app->getconf->get_global_config('mail'); -300-quota_notify.inc.php: $tmp_rec = $app->db->queryAllRecords("SELECT data from monitor_data WHERE type = 'database_size' ORDER BY created DESC"); -300-quota_notify.inc.php: $tmp_array = unserialize($app->db->unquote($tmp_mon['data'])); -300-quota_notify.inc.php: $database_records = $app->db->queryAllRecords("SELECT database_id,sys_groupid,database_name,database_quota,last_quota_notification,DATEDIFF(CURDATE(), last_quota_notification) as `notified_before` FROM web_database"); -300-quota_notify.inc.php: $client = $app->db->queryOneRecord("SELECT client.username, client.email FROM web_database, sys_group, client WHERE web_database.sys_groupid = sys_group.groupid AND sys_group.client_id = client.client_id AND web_database.database_name=?", $database); -300-quota_notify.inc.php: $app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'database_id', $rec['database_id']); -300-quota_notify.inc.php: '{used}' => $app->functions->formatBytes($monitor['size']), -300-quota_notify.inc.php: '{quota}' => $app->functions->formatBytes($quota), -300-quota_notify.inc.php: if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => null), 'database_id', $rec['database_id']); -300-quota_notify.inc.php: '{used}' => $app->functions->formatBytes($monitor['size']), -300-quota_notify.inc.php: '{quota}' => $app->functions->formatBytes($quota), -400-openvz.inc.php: if ($app->dbmaster == $app->db) { -400-openvz.inc.php: $records = $app->db->queryAllRecords($sql); -400-openvz.inc.php: $app->dbmaster->datalogUpdate('openvz_vm', array("active" => 'n'), 'vm_id', $rec['vm_id']); -400-openvz.inc.php: $app->log('Virtual machine active date expired. Disabling VM '.$rec['veid'], LOGLEVEL_DEBUG); -500-backup.inc.php: $app->load("backup"); -500-backup_mail.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); -500-backup_mail.inc.php: $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); -500-backup_mail.inc.php: $global_config = $app->getconf->get_global_config('sites'); -500-backup_mail.inc.php: if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $run_backups = false; -500-backup_mail.inc.php: $records = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ? AND maildir != ''", intval($conf['server_id'])); -500-backup_mail.inc.php: if($app->system->is_installed('pigz')) { -500-backup_mail.inc.php: $domain_rec=$app->db->queryOneRecord("SELECT * FROM mail_domain WHERE domain = ?", $domain); -500-backup_mail.inc.php: $webdomain = $app->db->queryOneRecord($sql, $domain_rec['domain']); -500-backup_mail.inc.php: $webdomain = $app->db->queryOneRecord($sql, $webdomain['parent_domain_id']); -500-backup_mail.inc.php: $app->system->exec_safe("su -c ?", 'dsync backup -u "'.$rec["email"].'" mdbox:' . $this->tmp_backup_dir . '/backup'); -500-backup_mail.inc.php: $app->system->exec_safe('cd ? && zip ? -b ? -r backup > /dev/null && rm -rf backup', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp); -500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); -500-backup_mail.inc.php: $app->system->exec_safe('tar pcf - --directory ? backup | pigz > ? && rm -rf ?', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir.'/backup'); -500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); -500-backup_mail.inc.php: $app->system->exec_safe('tar pczf ? --directory ? backup && rm -rf ?', $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir, $this->tmp_backup_dir.'/backup'); -500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); -500-backup_mail.inc.php: $app->system->exec_safe('rm -rf ?', $this->tmp_backup_dir . '/backup'); -500-backup_mail.inc.php: $app->system->exec_safe('cd ? && zip ? -b ? -r ? > /dev/null', $domain_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp, $source_dir); -500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); -500-backup_mail.inc.php: $app->system->exec_safe('tar pcf - --directory ? ? | pigz > ?', $domain_dir, $source_dir, $mail_backup_dir.'/'.$mail_backup_file); -500-backup_mail.inc.php: $app->system->exec_safe('tar pczf ? --directory ? ?', $mail_backup_dir.'/'.$mail_backup_file, $domain_dir, $source_dir); -500-backup_mail.inc.php: $retval = $app->system->last_exec_retcode(); -500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id'], $backup_mode, time(), $mail_backup_file, $filesize); -500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id'], $backup_mode, time(), $mail_backup_file, $filesize); -500-backup_mail.inc.php: $app->system->exec_safe('rm -rf ?', $rec['maildir'] . '/backup'); -500-backup_mail.inc.php: $app->log($mail_backup_file.' NOK:'.implode('',$tmp_output), LOGLEVEL_WARN); -500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $files[$n]); -500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $files[$n]); -500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id']); -500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $rec['mailuser_id']); -500-backup_mail.inc.php: $backups = $app->db->queryAllRecords("SELECT * FROM mail_backup WHERE server_id = ?", $conf['server_id']); -500-backup_mail.inc.php: $app->db->query($sql, $conf['server_id'], $backup['parent_domain_id'], $backup['filename']); -500-backup_mail.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $backup['parent_domain_id'], $backup['filename']); -500-backup_mail.inc.php: if( $server_config['backup_dir_is_mount'] == 'y' ) $app->system->umount_backup_dir($backup_dir); -500-clean_mailboxes.inc.php: $records = $app->db->queryAllRecords("SELECT email, maildir, purge_trash_days, purge_junk_days FROM mail_user WHERE maildir_format = 'maildir' AND disableimap = 'n' AND server_id = ? AND (purge_trash_days > 0 OR purge_junk_days > 0)", $server_id); -500-clean_mailboxes.inc.php: $app->system->exec_safe($purge_cmd.intval($email['purge_trash_days']).'d', $email['email'], $trash); -500-clean_mailboxes.inc.php: $app->system->exec_safe($purge_cmd.intval($email['purge_junk_days']).'d', $email['email'], $junk); -500-clean_mailboxes.inc.php: $app->system->exec_safe($recalc_cmd, $email['email']); -550-bind_dnssec.inc.php: $serial_date = $app->functions->intval(substr($serial, 0, 8)); -550-bind_dnssec.inc.php: $count = $app->functions->intval(substr($serial, 8, 2)); -550-bind_dnssec.inc.php: if($app->db->dbHost != $app->dbmaster->dbHost) return; -550-bind_dnssec.inc.php: $app->uses("getconf,tpl"); -550-bind_dnssec.inc.php:// $dns_config = $app->getconf->get_server_config($conf["server_id"], 'dns'); -550-bind_dnssec.inc.php:// $soas = $app->db->queryAllRecords("SELECT id,serial,origin FROM dns_soa WHERE server_id = ? AND active= 'Y' AND dnssec_wanted = 'Y' AND dnssec_initialized = 'Y' AND (dnssec_last_signed < ? OR dnssec_last_signed > ?)", $conf['server_id'], time()-(3600*24*5)+900, time()+900); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance) -550-bind_dnssec.inc.php: $soas = $app->db->queryAllRecords("SELECT id,serial,origin FROM dns_soa WHERE active= 'Y' AND dnssec_wanted = 'Y' AND dnssec_initialized = 'Y' AND (dnssec_last_signed < ? OR dnssec_last_signed > ?)", time()-(3600*24*5)+900, time()+900); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance) -550-bind_dnssec.inc.php: $app->log('DNSSEC Auto-Resign: Touching zone '.$domain, LOGLEVEL_DEBUG); -550-bind_dnssec.inc.php: $app->db->datalogUpdate('dns_soa', array("serial" => $this->increase_serial($data['serial'])), 'id', $data['id']); -600-cleanup.inc.php: $records = $app->db->queryAllRecords("SELECT s.instance_id, s.name, s.value FROM `aps_instances_settings` as s INNER JOIN `aps_instances` as i ON (i.id = s.instance_id) WHERE s.value != '' AND s.name IN ('main_database_password', 'admin_password') AND i.instance_status > 1"); -600-cleanup.inc.php: $tmp = $app->db->queryOneRecord("SELECT id FROM aps_instances_settings WHERE instance_id = ? AND name = ?", $rec['instance_id'], $rec['name']); -600-cleanup.inc.php: $app->db->datalogUpdate('aps_instances_settings', array("value" => ''), 'id', $tmp['id']); -600-purge_mailboxes.inc.php: $records = $app->db->queryAllRecords($sql, $server_id); -600-purge_mailboxes.inc.php: $app->system->exec_safe("su -c ?", 'doveadm purge -u "' . $rec["email"] . '"'); -900-letsencrypt.inc.php: $app->modules->loadModules('web_module'); -900-letsencrypt.inc.php: $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); -900-letsencrypt.inc.php: $acme = $app->letsencrypt->get_acme_script(); -900-letsencrypt.inc.php: $letsencrypt = $app->letsencrypt->get_certbot_script(); -900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); -900-letsencrypt.inc.php: $app->system->exec_safe($letsencrypt . ' -n renew --post-hook ?', $cmd); -900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); -900-letsencrypt.inc.php: $app->services->restartServiceDelayed('httpd', 'force-reload'); -900-letsencrypt.inc.php: $app->log('Migration mode active, not running Let\'s Encrypt renewal.', LOGLEVEL_DEBUG); diff --git a/server/lib/classes/cron.d/system- b/server/lib/classes/cron.d/system- deleted file mode 100644 index e69de29bb2..0000000000 -- GitLab From 2f3fbd71338d08790c6e46bdf8acccf1358a8a3a Mon Sep 17 00:00:00 2001 From: Michael Seevogel Date: Tue, 11 Aug 2020 11:16:41 +0200 Subject: [PATCH 3/5] fixed #5689 plus some additional clean ups --- interface/web/sites/web_vhost_domain_edit.php | 8 +- .../lib/classes/cron.d/150-goaccess.inc.php | 287 +++++++++--------- 2 files changed, 148 insertions(+), 147 deletions(-) diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index cc476a2276..2ae5e4f45f 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -244,17 +244,17 @@ class page_action extends tform_actions { if($this->_vhostdomain_type == 'domain') { if($this->dataRecord['php'] == 'php-fpm' || ($this->dataRecord['php'] == 'hhvm' && $server_type == 'nginx')){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); } if($this->dataRecord['php'] == 'fast-cgi'){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); } } else { if($this->dataRecord['php'] == 'php-fpm' || ($this->dataRecord['php'] == 'hhvm' && $server_type == 'nginx')){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); } if($this->dataRecord['php'] == 'fast-cgi'){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); } } if (empty($web_config['php_default_hide']) || 'n' === $web_config['php_default_hide']) { diff --git a/server/lib/classes/cron.d/150-goaccess.inc.php b/server/lib/classes/cron.d/150-goaccess.inc.php index 5c915e579a..295f153011 100644 --- a/server/lib/classes/cron.d/150-goaccess.inc.php +++ b/server/lib/classes/cron.d/150-goaccess.inc.php @@ -61,185 +61,186 @@ class cronjob_goaccess extends cronjob { $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); - $goaccess_conf_locs = array('/etc/goaccess.conf', '/etc/goaccess/goaccess.conf'); - $count = 0; - - foreach($goaccess_conf_locs as $goa_loc) { - if(is_file($goa_loc) && (filesize($goa_loc) > 0)) { - $goaccess_conf_main = $goa_loc; - break; - } else { - $count++; - if($count == 2) { - $app->log("No GoAccess base config found. Make sure that GoAccess is installed and that the goaccess.conf does exist in /etc or /etc/goaccess", LOGLEVEL_ERROR); - } - } - } - - - /* Check if goaccess binary is in path/installed */ - if($app->system->is_installed('goaccess')) { - - foreach($records as $rec) { - $yesterday = date('Ymd', strtotime("-1 day", time())); - - $log_folder = 'log'; - - if($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') { - $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); - $subdomain_host = preg_replace('/^(.*)\.' . preg_quote($tmp['domain'], '/') . '$/', '$1', $rec['domain']); - if($subdomain_host == '') $subdomain_host = 'web'.$rec['domain_id']; - $log_folder .= '/' . $subdomain_host; - unset($tmp); - } - - $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'; + if(is_array($records) && !empty($records)) { - if(!@is_file($logfile)) { - $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'; - if(!@is_file($logfile)) { - continue; - } - } + /* Check if goaccess binary is in path/installed */ + if($app->system->is_installed('goaccess')) { - $web_folder = (($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') ? $rec['web_folder'] : 'web'); - $domain = $rec['domain']; - $statsdir = $rec['document_root'].'/'.$web_folder.'/stats'; - $goaccess_conf = $rec['document_root'].'/log/goaccess.conf'; + $goaccess_conf_locs = array('/etc/goaccess.conf', '/etc/goaccess/goaccess.conf'); + $count = 0; - /* - In case that you use a different log format, you should use a custom goaccess.conf which you'll have to put into /usr/local/ispconfig/server/conf-custom/. - By default the originally, with GoAccess shipped goaccess.conf from /etc/ or /etc/goaccess will be used along with the log-format value COMBINED. - */ + foreach($goaccess_conf_locs as $goa_loc) { + if(is_file($goa_loc) && (filesize($goa_loc) > 0)) { + $goaccess_conf_main = $goa_loc; + break; + } else { + $count++; + if($count == 2) { + $app->log("No GoAccess base config found. Make sure that GoAccess is installed and that the goaccess.conf does exist in /etc or /etc/goaccess", LOGLEVEL_ERROR); + } + } + } - if(file_exists("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master") && (!file_exists($goaccess_conf))) { - $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master", $goaccess_conf); - } elseif(!file_exists($goaccess_conf)) { - /* - By default the goaccess.conf should get copied by the webserver plugin but in case it wasn't, or it got deleted by accident we gonna copy it again to the destination dir. - Also there was no /usr/local/ispconfig/server/conf-custom/goaccess.conf.master, so we gonna use /etc/goaccess.conf or /etc/goaccess/goaccess.conf as the base conf. - */ - $app->system->copy($goaccess_conf_main, $goaccess_conf); - $content = $app->system->file_get_contents($goaccess_conf, true); - $content = preg_replace('/^(#)?log-format COMBINED/m', "log-format COMBINED", $content); - $app->system->file_put_contents($goaccess_conf, $content, true); - unset($content); - } + foreach($records as $rec) { + $yesterday = date('Ymd', strtotime("-1 day", time())); + + $log_folder = 'log'; + + if($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') { + $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = ?', $rec['parent_domain_id']); + $subdomain_host = preg_replace('/^(.*)\.' . preg_quote($tmp['domain'], '/') . '$/', '$1', $rec['domain']); + if($subdomain_host == '') $subdomain_host = 'web'.$rec['domain_id']; + $log_folder .= '/' . $subdomain_host; + unset($tmp); + } - /* Update the primary domain name in the title, it could occasionally change */ - if(is_file($goaccess_conf) && (filesize($goaccess_conf) > 0)) { - $content = $app->system->file_get_contents($goaccess_conf, true); - $content = preg_replace('/^(#)?html-report-title(.*)/m', "html-report-title $domain", $content); - $app->system->file_put_contents($goaccess_conf, $content, true); - unset($content); - } + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'; - $username = $rec['system_user']; - $groupname = $rec['system_group']; - $docroot = $rec['document_root']; + if(!@is_file($logfile)) { + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'; + if(!@is_file($logfile)) { + continue; + } + } - if(!@is_dir($statsdir)) $app->system->mkdirpath($statsdir, 0755, $username, $groupname); + $web_folder = (($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') ? $rec['web_folder'] : 'web'); + $domain = $rec['domain']; + $statsdir = $rec['document_root'].'/'.$web_folder.'/stats'; + $goaccess_conf = $rec['document_root'].'/log/goaccess.conf'; - $goa_db_dir = $docroot.'/'.$web_folder.'/stats/.db/'; - $output_html = $docroot.'/'.$web_folder.'/stats/goaindex.html'; - if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); - - if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); - $app->system->create_relative_link($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); + /* + In case that you use a different log format, you should use a custom goaccess.conf which you'll have to put into /usr/local/ispconfig/server/conf-custom/. + By default the originally, with GoAccess shipped goaccess.conf from /etc/ or /etc/goaccess will be used along with the log-format value COMBINED. + */ - $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); + if(file_exists("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master") && (!file_exists($goaccess_conf))) { + $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess.conf.master", $goaccess_conf); + } elseif(!file_exists($goaccess_conf)) { - $goamonth = date("n"); - $goayear = date("Y"); + /* + By default the goaccess.conf should get copied by the webserver plugin but in case it wasn't, or it got deleted by accident we gonna copy it again to the destination dir. + Also there was no /usr/local/ispconfig/server/conf-custom/goaccess.conf.master, so we gonna use /etc/goaccess.conf or /etc/goaccess/goaccess.conf as the base conf. + */ - if (date("d") == 1) { - $goamonth = date("m")-1; - if (date("m") == 1) { - $goayear = date("Y")-1; - $goamonth = "12"; + $app->system->copy($goaccess_conf_main, $goaccess_conf); + $content = $app->system->file_get_contents($goaccess_conf, true); + $content = preg_replace('/^(#)?log-format COMBINED/m', "log-format COMBINED", $content); + $app->system->file_put_contents($goaccess_conf, $content, true); + unset($content); } - } - if (date("d") == 2) { - $goamonth = date("m")-1; - if (date("m") == 1) { - $goayear = date("Y")-1; - $goamonth = "12"; + /* Update the primary domain name in the title, it could occasionally change */ + if(is_file($goaccess_conf) && (filesize($goaccess_conf) > 0)) { + $content = $app->system->file_get_contents($goaccess_conf, true); + $content = preg_replace('/^(#)?html-report-title(.*)/m', "html-report-title $domain", $content); + $app->system->file_put_contents($goaccess_conf, $content, true); + unset($content); } - $statsdirold = $statsdir."/".$goayear."-".$goamonth."/"; + $username = $rec['system_user']; + $groupname = $rec['system_group']; + $docroot = $rec['document_root']; + + if(!@is_dir($statsdir)) $app->system->mkdirpath($statsdir, 0755, $username, $groupname); - if(!is_dir($statsdirold)) { - $app->system->mkdirpath($statsdirold, 0755, $username, $groupname); + $goa_db_dir = $docroot.'/'.$web_folder.'/stats/.db/'; + $output_html = $docroot.'/'.$web_folder.'/stats/goaindex.html'; + if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); + + if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); + $app->system->create_relative_link($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); + + $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); + + $goamonth = date("n"); + $goayear = date("Y"); + + if (date("d") == 1) { + $goamonth = date("m")-1; + if (date("m") == 1) { + $goayear = date("Y")-1; + $goamonth = "12"; + } } - // don't rotate db files per month - //rename($goa_db_dir, $statsdirold.'db'); - //mkdir($goa_db_dir); + if (date("d") == 2) { + $goamonth = date("m")-1; + if (date("m") == 1) { + $goayear = date("Y")-1; + $goamonth = "12"; + } + + $statsdirold = $statsdir."/".$goayear."-".$goamonth."/"; + + if(!is_dir($statsdirold)) { + $app->system->mkdirpath($statsdirold, 0755, $username, $groupname); + } - $app->system->copy($output_html, $statsdirold); - $app->system->unlink($output_html); + // don't rotate db files per month + //rename($goa_db_dir, $statsdirold.'db'); + //mkdir($goa_db_dir); - $files = scandir($statsdir); + $files = scandir($statsdir); - foreach ($files as $file) { - if (substr($file, 0, 1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file, 0, 1) != "w" && substr($file, 0, 1) != "i") $app->system->copy("$statsdir"."/"."$file", "$statsdirold"."$file"); + foreach ($files as $file) { + if (substr($file, 0, 1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file, 0, 1) != "w" && substr($file, 0, 1) != "i") $app->system->copy("$statsdir"."/"."$file", "$statsdirold"."$file"); + } } - } - - // Get the GoAccess version - $match = array(); - $goaccess_version = $app->system->system_safe('goaccess --version 2>&1'); + // Get the GoAccess version + $match = array(); + + $goaccess_version = $app->system->system_safe('goaccess --version 2>&1'); - if(preg_match('/[0-9]\.[0-9]{1,2}/', $goaccess_version, $match)) { - $goaccess_version = $match[0]; - } + if(preg_match('/[0-9]\.[0-9]{1,2}/', $goaccess_version, $match)) { + $goaccess_version = $match[0]; + } - /* - * GoAccess removed with 1.4 btree support and supports from this version on only "In-Memory with On-Disk Persitance Storage". - * For versions prior 1.4 you need GoAccess with btree support compiled! - */ + /* + * GoAccess removed with 1.4 btree support and supports from this version on only "In-Memory with On-Disk Persitance Storage". + * For versions prior 1.4 you need GoAccess with btree support compiled! + */ - $cust_lang = $conf['language']."_".strtoupper($conf['language']); - - if(version_compare($goaccess_version,1.4) >= 0) { - $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --restore --persist --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); - } else { - $output = $app->system->system_safe('goaccess --help 2>&1'); - preg_match('/keep-db-files/', $output, $match); - if($match[0] == "keep-db-files") { - $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --load-from-disk --keep-db-files --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); - } else { - $app->log("Stats not generated. The GoAccess binary was not compiled with btree support. Please recompile/reinstall GoAccess with btree support, or install GoAccess version >= 1.4!", LOGLEVEL_ERROR); - } - unset($output); - } - unset($cust_lang); + $cust_lang = $conf['language']."_".strtoupper($conf['language']); - if(!is_file($rec['document_root']."/".$web_folder."/stats/index.php")) { - if(file_exists("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master")) { - $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); + if(version_compare($goaccess_version,1.4) >= 0) { + $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --restore --persist --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); } else { - $app->system->copy("/usr/local/ispconfig/server/conf/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); + $output = $app->system->system_safe('goaccess --help 2>&1'); + preg_match('/keep-db-files/', $output, $match); + if($match[0] == "keep-db-files") { + $app->system->exec_safe("LANG=? goaccess -f ? --config-file ? --load-from-disk --keep-db-files --db-path=? --output=?", $cust_lang, $logfile, $goaccess_conf, $goa_db_dir, $output_html); + } else { + $app->log("Stats not generated. The GoAccess binary was not compiled with btree support. Please recompile/reinstall GoAccess with btree support, or install GoAccess version >= 1.4!", LOGLEVEL_ERROR); + } + unset($output); + } + unset($cust_lang); + + if(!is_file($rec['document_root']."/".$web_folder."/stats/index.php")) { + if(file_exists("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master")) { + $app->system->copy("/usr/local/ispconfig/server/conf-custom/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); + } else { + $app->system->copy("/usr/local/ispconfig/server/conf/goaccess_index.php.master", $rec['document_root']."/".$web_folder."/stats/index.php"); + } } - } - $app->log('Created GoAccess statistics for ' . $domain, LOGLEVEL_DEBUG); - if(is_file($rec['document_root']."/".$web_folder."/stats/index.php")) { - $app->system->chown($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_user']); - $app->system->chgrp($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_group']); - } + $app->log('Created GoAccess statistics for ' . $domain, LOGLEVEL_DEBUG); + if(is_file($rec['document_root']."/".$web_folder."/stats/index.php")) { + $app->system->chown($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_user']); + $app->system->chgrp($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_group']); + } - $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); + $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); + } + } else { + $app->log("Stats not generated. The GoAccess binary couldn't be found. Make sure that GoAccess is installed and that it is in \$PATH", LOGLEVEL_ERROR); } - } else { - $app->log("Stats not generated. The GoAccess binary couldn't be found. Make sure that GoAccess is installed and that it is in \$PATH", LOGLEVEL_ERROR); - } + } parent::onRunJob(); } -- GitLab From 4851599d6b017b23bfc2e7ae16321fa204089983 Mon Sep 17 00:00:00 2001 From: Michael Seevogel Date: Tue, 11 Aug 2020 11:19:50 +0200 Subject: [PATCH 4/5] revert web_vhost_domain_edit.php modifications --- interface/web/sites/web_vhost_domain_edit.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index 2ae5e4f45f..cc476a2276 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -244,17 +244,17 @@ class page_action extends tform_actions { if($this->_vhostdomain_type == 'domain') { if($this->dataRecord['php'] == 'php-fpm' || ($this->dataRecord['php'] == 'hhvm' && $server_type == 'nginx')){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); } if($this->dataRecord['php'] == 'fast-cgi'){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", ($this->id > 0 ? $this->dataRecord['server_id'] : $client['default_webserver']), $_SESSION['s']['user']['client_id']); } } else { if($this->dataRecord['php'] == 'php-fpm' || ($this->dataRecord['php'] == 'hhvm' && $server_type == 'nginx')){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); } if($this->dataRecord['php'] == 'fast-cgi'){ - $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y' ORDER BY server_php.name", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); + $php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0 OR client_id=?) AND active = 'y'", $parent_domain['server_id'], $_SESSION['s']['user']['client_id']); } } if (empty($web_config['php_default_hide']) || 'n' === $web_config['php_default_hide']) { -- GitLab From e4dbeea2154b6ca6749547e2d1b153db29d742a1 Mon Sep 17 00:00:00 2001 From: Michael Seevogel Date: Fri, 14 Aug 2020 14:55:41 +0200 Subject: [PATCH 5/5] revert to symlink --- server/lib/classes/cron.d/150-goaccess.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/cron.d/150-goaccess.inc.php b/server/lib/classes/cron.d/150-goaccess.inc.php index 295f153011..8f397c819a 100644 --- a/server/lib/classes/cron.d/150-goaccess.inc.php +++ b/server/lib/classes/cron.d/150-goaccess.inc.php @@ -149,8 +149,8 @@ class cronjob_goaccess extends cronjob { if(!@is_dir($goa_db_dir)) $app->system->mkdirpath($goa_db_dir); if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) $app->system->unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); - $app->system->create_relative_link($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); + symlink($logfile, '/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); $goamonth = date("n"); -- GitLab