Commit 621f2702 authored by Till Brehm's avatar Till Brehm
Browse files

Merge branch 'stable-3.0.5' of git.ispconfig.org:ispconfig/ispconfig3 into stable-3.0.5

parents fbc02f27 60b70001
......@@ -29,7 +29,23 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
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;
......
......@@ -87,6 +87,7 @@ include_once 'dist/conf/'.$dist['id'].'.conf.php';
//** 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"));
......
......@@ -812,6 +812,7 @@ function get_system_timezone() {
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 get_system_timezone() {
}
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;
}
?>
......@@ -9,7 +9,7 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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
......
......@@ -9,7 +9,7 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
<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
......
......@@ -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
......
......@@ -1759,6 +1759,32 @@ class system{
}
}
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;
}
}
?>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment