Till Brehm
2014-03-11 621f2702ac5a707818141e6695767b519ecbdf4a
Merge branch 'stable-3.0.5' of git.ispconfig.org:ispconfig/ispconfig3 into stable-3.0.5
7 files modified
130 ■■■■ changed files
install/dist/lib/opensuse.lib.php 18 ●●●●● patch | view | raw | blame | history
install/install.php 1 ●●●● patch | view | raw | blame | history
install/lib/install.lib.php 71 ●●●●● patch | view | raw | blame | history
install/tpl/apache_ispconfig.conf.master 6 ●●●● patch | view | raw | blame | history
server/conf/apache_ispconfig.conf.master 6 ●●●● patch | view | raw | blame | history
server/conf/vhost.conf.master 2 ●●● patch | view | raw | blame | history
server/lib/classes/system.inc.php 26 ●●●●● patch | view | raw | blame | history
install/dist/lib/opensuse.lib.php
@@ -29,7 +29,23 @@
*/
class installer_dist extends installer_base {
    public function __construct() {
        //** check apache modules */
        $mods = getapachemodules();
        if(in_array('authz_compat', $mods, true)) {
            swriteln($inst->lng('    WARNING! You are using mod_authz_compat.'));
            swriteln($inst->lng('    Please make sure that your apache config uses the new auth syntax:'));
            swriteln($inst->lng('    <Directory />'));
            swriteln($inst->lng('    Options None'));
            swriteln($inst->lng('    AllowOverride None'));
            swriteln($inst->lng('    Require all denied'));
            swriteln($inst->lng('    </Directory>'."\n"));
            swriteln($inst->lng('    If it uses the old syntax (deny from all) ISPConfig would fail to work.'));
        }
    }
    public function configure_mailman($status = 'insert') {
        global $conf;
install/install.php
@@ -87,6 +87,7 @@
//** Installer Interface
//****************************************************************************************************
$inst = new installer();
swriteln($inst->lng('    Following will be a few questions for primary configuration so be careful.'));
swriteln($inst->lng('    Default values are in [brackets] and can be accepted with <ENTER>.'));
swriteln($inst->lng('    Tap in "quit" (without the quotes) to stop the installer.'."\n\n"));
install/lib/install.lib.php
@@ -812,6 +812,7 @@
    if(!$timezone && is_link('/etc/localtime')) {
        $timezone = readlink('/etc/localtime');
        $timezone = str_replace('/usr/share/zoneinfo/', '', $timezone);
        $timezone = str_replace('..', '', $timezone);
        if(substr($timezone, 0, 6) === 'posix/') $timezone = substr($timezone, 6);
    } elseif(!$timezone) {
        $hash = md5_file('/etc/localtime');
@@ -829,29 +830,55 @@
}
function getapacheversion($get_minor = false) {
        global $app;
        $cmd = '';
        if(is_installed('apache2ctl')) $cmd = 'apache2ctl -v';
        elseif(is_installed('apachectl')) $cmd = 'apachectl -v';
        else {
            $app->log("Could not check apache version, apachectl not found.", LOGLEVEL_WARN);
            return '2.2';
        }
        exec($cmd, $output, $return_var);
        if($return_var != 0 || !$output[0]) {
            $app->log("Could not check apache version, apachectl did not return any data.", LOGLEVEL_WARN);
            return '2.2';
        }
        if(preg_match('/version:\s*Apache\/(\d+)(\.(\d+)(\.(\d+))*)?(\D|$)/i', $output[0], $matches)) {
            return $matches[1] . (isset($matches[3]) ? '.' . $matches[3] : '') . (isset($matches[5]) && $get_minor == true ? '.' . $matches[5] : '');
        } else {
            $app->log("Could not check apache version, did not find version string in apachectl output.", LOGLEVEL_WARN);
            return '2.2';
    global $app;
    $cmd = '';
    if(is_installed('apache2ctl')) $cmd = 'apache2ctl -v';
    elseif(is_installed('apachectl')) $cmd = 'apachectl -v';
    else {
        $app->log("Could not check apache version, apachectl not found.", LOGLEVEL_WARN);
        return '2.2';
    }
    exec($cmd, $output, $return_var);
    if($return_var != 0 || !$output[0]) {
        $app->log("Could not check apache version, apachectl did not return any data.", LOGLEVEL_WARN);
        return '2.2';
    }
    if(preg_match('/version:\s*Apache\/(\d+)(\.(\d+)(\.(\d+))*)?(\D|$)/i', $output[0], $matches)) {
        return $matches[1] . (isset($matches[3]) ? '.' . $matches[3] : '') . (isset($matches[5]) && $get_minor == true ? '.' . $matches[5] : '');
    } else {
        $app->log("Could not check apache version, did not find version string in apachectl output.", LOGLEVEL_WARN);
        return '2.2';
    }
}
function getapachemodules() {
    global $app;
    $cmd = '';
    if(is_installed('apache2ctl')) $cmd = 'apache2ctl -t -D DUMP_MODULES';
    elseif(is_installed('apachectl')) $cmd = 'apachectl -t -D DUMP_MODULES';
    else {
        $app->log("Could not check apache modules, apachectl not found.", LOGLEVEL_WARN);
        return array();
    }
    exec($cmd, $output, $return_var);
    if($return_var != 0 || !$output[0]) {
        $app->log("Could not check apache modules, apachectl did not return any data.", LOGLEVEL_WARN);
        return array();
    }
    $modules = array();
    for($i = 0; $i < count($output); $i++) {
        if(preg_match('/^\s*(\w+)\s+\((shared|static)\)\s*$/', $output[$i], $matches)) {
            $modules[] = $matches[1];
        }
    }
    return $modules;
}
?>
install/tpl/apache_ispconfig.conf.master
@@ -9,7 +9,7 @@
<Directory /var/www/clients>
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
@@ -20,7 +20,7 @@
<Directory />
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
@@ -30,7 +30,7 @@
<Directory /var/www/conf>
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
server/conf/apache_ispconfig.conf.master
@@ -9,7 +9,7 @@
<Directory /var/www/clients>
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
@@ -20,7 +20,7 @@
<Directory />
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
@@ -30,7 +30,7 @@
<Directory /var/www/conf>
    AllowOverride None
    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
    Require all deny
    Require all denied
    <tmpl_else>
    Order Deny,Allow
    Deny from all
server/conf/vhost.conf.master
@@ -2,7 +2,7 @@
<Directory {tmpl_var name='web_basedir'}/{tmpl_var name='domain'}>
        AllowOverride None
        <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
        Require all deny
        Require all denied
        <tmpl_else>
        Order Deny,Allow
        Deny from all
server/lib/classes/system.inc.php
@@ -1759,6 +1759,32 @@
        }
    }
    function getapachemodules() {
        global $app;
        $cmd = '';
        if(is_installed('apache2ctl')) $cmd = 'apache2ctl -t -D DUMP_MODULES';
        elseif(is_installed('apachectl')) $cmd = 'apachectl -t -D DUMP_MODULES';
        else {
            $app->log("Could not check apache modules, apachectl not found.", LOGLEVEL_WARN);
            return array();
        }
        exec($cmd, $output, $return_var);
        if($return_var != 0 || !$output[0]) {
            $app->log("Could not check apache modules, apachectl did not return any data.", LOGLEVEL_WARN);
            return array();
        }
        $modules = array();
        for($i = 0; $i < count($output); $i++) {
            if(preg_match('/^\s*(\w+)\s+\((shared|static)\)\s*$/', $output[$i], $matches)) {
                $modules[] = $matches[1];
            }
        }
        return $modules;
    }
}
?>