| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | 
							- <?php
 
- $gapsIni = realpath(dirname(__FILE__) . "/../../GAPS.ini");
 
- $config = parse_ini_file($gapsIni);
 
- $gapsApacheConf = $config['PORTAL']. "/Tasks/config/GAPS.Apache.conf";
 
- $apache = realpath($config['PHP'] . "/../httpd/conf/");
 
- function convertGapsConf () {
 
- 	global $config;
 
- 	global $apache;
 
- 	global $gapsApacheConf;
 
- 	
 
- 	if (!$apache) return "Apache-Verzeichnis nicht gefunden.";
 
- 	if (!file_exists($apache . "/GAPS.conf")) return "GAPS.conf nicht gefunden.";
 
- 	$httpdConf = file_get_contents($apache . "/httpd.conf");
 
- 	$match = array();
 
- 	if (!preg_match('/\r\nListen (\d+)/im', $httpdConf, $match)) return "Apache-Port nicht gefunden.";
 
- 	$httpdConf = preg_replace('/\r\nListen \d+/im', "", $httpdConf);
 
- 	$port = $match[1];
 
- 	$httpdConf = str_replace('GCPS.conf', 'php5.module.conf', $httpdConf);
 
- 	$httpdConf .= "\r\n" . 'include "' . str_replace("\\", "/", $config['PORTAL']) . '/Tasks/config/GAPS.Apache.conf"';
 
- 	if (!rename($apache . "/GAPS.conf", $gapsApacheConf)) return "GAPS.conf laesst sich nicht verschieben.";
 
- 	if (!file_put_contents($apache . "/httpd.conf", $httpdConf)) {
 
- 		file_put_contents($config['PORTAL']. "/Tasks/httpd.conf", $httpdConf);
 
- 		return "httpd.conf laesst sich nicht ueberschreiben. Bitte manuell austauschen.";
 
- 	}
 
- 	unlink($apache. "/GCPS.conf");
 
- 	
 
- 	$gapsConf = file_get_contents($gapsApacheConf);
 
- 	$gapsConf = "Listen " . $port . "\r\n\r\n" . $gapsConf;
 
- 	file_put_contents($gapsApacheConf, $gapsConf);
 
- 	return "";
 
- }
 
- function addGapsUrl () {
 
- 	global $config;
 
- 	global $gapsIni;
 
- 	global $gapsApacheConf;
 
- 	$gapsConf = file_get_contents($gapsApacheConf);
 
- 	if (!preg_match('/\nAlias "\/(.*)" "(.*)"\r\n/im', $gapsConf, $match)) return "Alias unbekannt";
 
- 	$subdir = $match[1];
 
- 	if (preg_match('/Listen (\d+)/im', $gapsConf, $match)) {
 
- 		$port = $match[1];
 
- 	} else {
 
- 		$port = "80";
 
- 	}
 
- 	$output = array();
 
- 	exec("systeminfo", $output);
 
- 	$output = implode("\r\n", $output);
 
- 	if (!preg_match('/(LAN-Verbindung|Ethernet0|Local Area)[^[]*\[01\]:\s([\d\.]+)/im', $output, $match)) return "IP-Adresse unbekannt.";
 
- 	$host = $match[2];
 
- 	$config['GAPS_URL'] = "http://{$host}:{$port}/{$subdir}";
 
- 	file_put_contents($gapsIni, "\r\nGAPS_URL=\"{$config['GAPS_URL']}\"" , FILE_APPEND);
 
- 	return "";
 
- }
 
- function addRemoteTasks() {
 
- 	global $gapsApacheConf;
 
- 	
 
- 	$gapsConf = file_get_contents($gapsApacheConf);
 
- 	if (!preg_match('/\nAlias "\/Remote\/" "(.*)"\r\n/im', $gapsConf, $match)) {
 
- 		$alias = 'Alias "/Remote/" "' . str_replace("\\", "/", realpath(dirname(__FILE__)."/../Remote")) . '/"' . "\r\n\r\n";
 
- 		$gapsConf = str_replace("\r\n<Dir", $alias . "\r\n<Dir", $gapsConf);
 
- 		file_put_contents($gapsApacheConf, $gapsConf);
 
- 	}
 
- 	return "";
 
- }
 
- if (!file_exists($gapsApacheConf)) {
 
- 	echo convertGapsConf();
 
- }
 
- if (!isset($config['GAPS_URL'])) {
 
- 	echo addGapsUrl();
 
- }
 
- if (file_exists($gapsApacheConf)) {
 
- 	echo addRemoteTasks();
 
- }
 
- echo "Apache-Umstellung erfolgreich.";
 
 
  |