From 8b2f577c8701cf234b8e1bd84d4d2c93319a5cdb Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Thu, 05 Mar 2009 11:38:25 -0500
Subject: [PATCH] Set hostname and IP address in server settings during install.

---
 install/lib/installer_base.lib.php |   41 +++++++++++++++++++++++++++++------------
 1 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index abdf109..4ce617c 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -202,6 +202,10 @@
 		// TODO: Update further distribution specific parameters for server config here
 		$tpl_ini_array['web']['vhost_conf_dir'] = $conf['apache']['vhost_conf_dir'];
 		$tpl_ini_array['web']['vhost_conf_enabled_dir'] = $conf['apache']['vhost_conf_enabled_dir'];
+		$tpl_ini_array['jailkit']['jailkit_chroot_app_programs'] = $conf['jailkit']['jailkit_chroot_app_programs'];
+		$tpl_ini_array['fastcgi']['fastcgi_phpini_path'] = $conf['fastcgi']['fastcgi_phpini_path'];
+		$tpl_ini_array['server']['hostname'] = $conf['hostname'];
+		$tpl_ini_array['server']['ip_address'] = @gethostbyname($conf['hostname']);
 		
 		$server_ini_content = array_to_ini($tpl_ini_array);
 		$server_ini_content = mysql_real_escape_string($server_ini_content);
@@ -230,7 +234,7 @@
 			$from_ip = gethostbyname($conf['hostname']);
 			
 			//* username for the ispconfig user
-			$conf['mysql']['master_ispconfig_user'] = 'ispconfigserver'.$conf['server_id'];
+			$conf['mysql']['master_ispconfig_user'] = 'ispcsrv'.$conf['server_id'];
 		
 			//* Delete ISPConfig user in the master database, in case that it exists
 			$this->dbmaster->query("DELETE FROM mysql.user WHERE User = '".$conf['mysql']['master_ispconfig_user']."' AND Host = '".$from_host."';");
@@ -702,8 +706,8 @@
 		}
 		
 		if(is_file('/etc/apache2/sites-enabled/000-default')) {
-			replaceLine('/etc/apache2/sites-available/000-default','NameVirtualHost *','NameVirtualHost *:80',1);
-			replaceLine('/etc/apache2/sites-available/000-default','<VirtualHost *>','<VirtualHost *:80>',1);
+			replaceLine('/etc/apache2/sites-available/000-default','NameVirtualHost *','NameVirtualHost *:80',1,0);
+			replaceLine('/etc/apache2/sites-available/000-default','<VirtualHost *>','<VirtualHost *:80>',1,0);
 		}
 		
 		if(is_file('/etc/apache2/ports.conf')) {
@@ -908,6 +912,12 @@
 		$file_server_enabled = ($conf['services']['file'])?1:0;
 		$db_server_enabled = ($conf['services']['db'])?1:0;
 		$vserver_server_enabled = ($conf['services']['vserver'])?1:0;
+		
+		
+		
+		
+		
+		
 		$sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled' WHERE server_id = ".intval($conf['server_id']);
 		
 		if($conf['mysql']['master_slave_setup'] == 'y') {
@@ -992,24 +1002,27 @@
 				exec("ln -s $vhost_conf_dir/ispconfig.vhost $vhost_conf_enabled_dir/000-ispconfig.vhost");
 			}
 		}
-		
-		// Make the Clamav log files readable by ISPConfig
-		exec('chmod +r /var/log/clamav/clamav.log');
-		exec('chmod +r /var/log/clamav/freshclam.log');
+		if(!is_file('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter')) {
+			exec('mkdir -p /var/www/php-fcgi-scripts/ispconfig');
+			exec('cp tpl/apache_ispconfig_fcgi_starter.master /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
+			exec('chmod +x /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
+			exec('ln -s /usr/local/ispconfig/interface/web /var/www/ispconfig');
+			exec('chown -R ispconfig:ispconfig /var/www/php-fcgi-scripts/ispconfig');
+			
+		}
 		
 		//* Install the SVN update script
 		exec('cp ../helper_scripts/update_from_svn.sh /usr/local/bin/ispconfig_update_from_svn.sh');
 		exec('chown root /usr/local/bin/ispconfig_update_from_svn.sh');
 		exec('chmod 700 /usr/local/bin/ispconfig_update_from_svn.sh');
 		
-		//set the fast cgi starter script to executable
-		exec('chmod 755 '.$install_dir.'/interface/bin/php-fcgi');
-		
 		//* Make the logs readable for the ispconfig user
 		if(@is_file('/var/log/mail.log')) exec('chmod +r /var/log/mail.log');
 		if(@is_file('/var/log/mail.warn')) exec('chmod +r /var/log/mail.warn');
 		if(@is_file('/var/log/mail.err')) exec('chmod +r /var/log/mail.err');
 		if(@is_file('/var/log/messages')) exec('chmod +r /var/log/messages');
+		if(@is_file('/var/log/clamav/clamav.log')) exec('chmod +r /var/log/clamav/clamav.log');
+		if(@is_file('/var/log/clamav/freshclam.log')) exec('chmod +r /var/log/clamav/freshclam.log');
 		
 		//* Create the ispconfig log directory
 		if(!is_dir('/var/log/ispconfig')) mkdir('/var/log/ispconfig');
@@ -1075,12 +1088,12 @@
 			$existing_cron_jobs = file('crontab.txt');
 		
 			$cron_jobs = array(
-                '*/5 * * * * '.$cf['program'].' -g '.$cf['config_dir'].' -r '.$cf['config_dir'].'/*.conf > /dev/null 2>> /var/log/ispconfig/cron.log'
+                '*/5 * * * * '.$cf['program'].' -n -g '.$cf['config_dir'].' -r '.$cf['config_dir'].'/*.conf > /dev/null 2>> /var/log/ispconfig/cron.log'
             );
 		
 			// remove existing ispconfig cronjobs, in case the syntax has changed
 			foreach($cron_jobs as $key => $val) {
-				if(stristr($val,$cf['program'])) unset($cron_jobs[$key]);
+				if(stristr($val,$cf['program'])) unset($existing_cron_jobs[$key]);
 			}
 		
 			foreach($cron_jobs as $cron_job) {
@@ -1092,6 +1105,10 @@
 			exec('crontab -u getmail crontab.txt &> /dev/null');
 			unlink('crontab.txt');
 		}
+		
+		exec('touch /var/log/ispconfig/cron.log');
+		exec('chmod 666 /var/log/ispconfig/cron.log');
+		
 	}
 	
 }

--
Gitblit v1.9.1