diff --git a/lib/os/class.ISPConfigDebian10OS.inc.php b/lib/os/class.ISPConfigDebian10OS.inc.php index ead44909d7c0106207cab3abd403a973bb2bb10f..037072b7b0ad4123b28f273c4dc961e79b52dec1 100644 --- a/lib/os/class.ISPConfigDebian10OS.inc.php +++ b/lib/os/class.ISPConfigDebian10OS.inc.php @@ -54,28 +54,6 @@ class ISPConfigDebian10OS extends ISPConfigDebianOS { return true; } - protected function setDefaultPHP() { - ISPConfigLog::info('Setting default system php version.', true); - $cmd = 'update-alternatives --set php /usr/bin/php' . $this->getSystemPHPVersion(); - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - - if(ISPConfig::shallInstall('web')) { - // When --use-php-system is used, there is no alternative for php-fpm.sock. - if(ISPConfig::wantsPHP() === 'system') { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi' . $this->getSystemPHPVersion(); - } else { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi' . $this->getSystemPHPVersion() . ' ; update-alternatives --set php-fpm.sock /run/php/php' . $this->getSystemPHPVersion() . '-fpm.sock'; - } - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - } - } - protected function getRoundcubePackages() { return array( 'roundcube/buster-backports', @@ -123,130 +101,6 @@ maxretry = 3'; return $jk_jail; } - protected function installPHPMyAdmin($mysql_root_pw) { - if(!ISPConfig::shallInstall('web') || !ISPConfig::shallInstall('pma')) { - return; - } - - ISPConfigLog::info('Installing package phpmyadmin', true); - - if(!is_dir('/usr/share/phpmyadmin')) { - mkdir('/usr/share/phpmyadmin', 0755, true); - } - if(!is_dir('/etc/phpmyadmin')) { - mkdir('/etc/phpmyadmin', 0755); - } - if(!is_dir('/var/lib/phpmyadmin/tmp')) { - mkdir('/var/lib/phpmyadmin/tmp', 0777, true); - } - touch('/etc/phpmyadmin/htpasswd.setup'); - - $cmd = 'chown -R www-data:www-data ' . escapeshellarg('/var/lib/phpmyadmin') . ' ; cd /tmp ; rm -f phpMyAdmin-4.9.0.1-all-languages.tar.gz ; wget "https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.tar.gz" 2>/dev/null && tar xfz phpMyAdmin-4.9.0.1-all-languages.tar.gz && cp -a phpMyAdmin-4.9.0.1-all-languages/* /usr/share/phpmyadmin/ && rm -f phpMyAdmin-4.9.0.1-all-languages.tar.gz && rm -rf phpMyAdmin-4.9.0.1-all-languages'; - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - - copy('/usr/share/phpmyadmin/config.sample.inc.php', '/usr/share/phpmyadmin/config.inc.php'); - - $replacements = array( - '/^(?:\s*\/\/)?\s*\$cfg\[\'blowfish_secret\'\]\s*=.*$/m' => '$cfg[\'blowfish_secret\'] = \'' . substr(sha1(uniqid('pre', true)), 0, 32) . '\';', - '/^(?:\s*\/\/)?\s*\$cfg\[\'TempDir\'\]\s*=.*$/m' => '$cfg[\'TempDir\'] = \'/var/lib/phpmyadmin/tmp\';' - ); - $this->replaceContents('/usr/share/phpmyadmin/config.inc.php', $replacements, true); - - $contents = '# phpMyAdmin default Apache configuration - -Alias /phpmyadmin /usr/share/phpmyadmin - - - Options FollowSymLinks - DirectoryIndex index.php - - - AddType application/x-httpd-php .php - - php_flag magic_quotes_gpc Off - php_flag track_vars On - php_flag register_globals Off - php_value include_path . - - - - -# Authorize for setup - - - AuthType Basic - AuthName "phpMyAdmin Setup" - AuthUserFile /etc/phpmyadmin/htpasswd.setup - - Require valid-user - - -# Disallow web access to directories that don\'t need it - - Order Deny,Allow - Deny from All - - - Order Deny,Allow - Deny from All -'; - if(ISPConfig::$WEBSERVER === ISPC_WEBSERVER_APACHE) { - file_put_contents('/etc/apache2/conf-available/phpmyadmin.conf', $contents); - - $cmd = 'a2enconf phpmyadmin'; - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - - $this->restartService('apache2'); - } - - $pma_pass = ISPConfigFunctions::generatePassword(15); - $pma_pass_enc = preg_replace('/[\'\\\\]/', '\\$1', $pma_pass); - - $queries = array( - 'CREATE DATABASE phpmyadmin;', - 'CREATE USER \'pma\'@\'localhost\' IDENTIFIED BY \'' . $pma_pass_enc . '\';', - 'GRANT ALL PRIVILEGES ON phpmyadmin.* TO \'pma\'@\'localhost\' IDENTIFIED BY \'' . $pma_pass_enc . '\' WITH GRANT OPTION;', - 'FLUSH PRIVILEGES;' - ); - - foreach($queries as $query) { - $cmd = 'mysql --defaults-file=/etc/mysql/debian.cnf -e ' . escapeshellarg($query) . ' 2>&1'; - $result = $this->exec($cmd); - if($result === false) { - ISPConfigLog::warn('Query ' . $query . ' failed.', true); - } - } - - $cmd = 'mysql --defaults-file=/etc/mysql/debian.cnf -D phpmyadmin < /usr/share/phpmyadmin/sql/create_tables.sql'; - $result = $this->exec($cmd); - if($result === false) { - ISPConfigLog::warn('Command ' . $cmd . ' failed.', true); - } - - $uncomment = array( - array( - 'first_line' => '/^(?:\s*\/\/)?\s*\$cfg\[\'Servers\'\]\[\$i\]/', - 'last_line' => '/####nomatch###/', - 'search' => '/^(?:\s*\/\/)?\s*\$cfg\[\'Servers\'\]\[\$i\]/' - ) - ); - $this->uncommentLines('/usr/share/phpmyadmin/config.inc.php', $uncomment, '//'); - - $replacements = array( - '/^(?:\s*\/\/)?\s*(\$cfg\[\'Servers\'\]\[\$i\]\[\'controlhost\'\])\s*=.*$/m' => '$1 = \'localhost\';', - '/^(?:\s*\/\/)?\s*(\$cfg\[\'Servers\'\]\[\$i\]\[\'controlport\'\])\s*=.*$/m' => '$1 = \'\';', - '/^(?:\s*\/\/)?\s*(\$cfg\[\'Servers\'\]\[\$i\]\[\'controluser\'\])\s*=.*$/m' => '$1 = \'pma\';', - '/^(?:\s*\/\/)?\s*(\$cfg\[\'Servers\'\]\[\$i\]\[\'controlpass\'\])\s*=.*$/m' => '$1 = \'' . $pma_pass_enc . '\';', - ); - $this->replaceContents('/usr/share/phpmyadmin/config.inc.php', $replacements, false); - } - protected function getSystemPHPVersion() { return '7.3'; } diff --git a/lib/os/class.ISPConfigDebianOS.inc.php b/lib/os/class.ISPConfigDebianOS.inc.php index e4b69da12c395c19b05cea8109070265bb08d5a5..bc0ea9ca001a9b90502cf80d87bba4021e0189b7 100644 --- a/lib/os/class.ISPConfigDebianOS.inc.php +++ b/lib/os/class.ISPConfigDebianOS.inc.php @@ -213,24 +213,27 @@ class ISPConfigDebianOS extends ISPConfigBaseOS { } protected function setDefaultPHP() { - ISPConfigLog::info('Setting default system php version.', true); - $cmd = 'update-alternatives --set php /usr/bin/php7.0'; + ISPConfigLog::info('Setting default system PHP version.', true); + $cmd = 'update-alternatives --set php /usr/bin/php' . $this->getSystemPHPVersion(); $result = $this->exec($cmd); if($result === false) { throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); } if(ISPConfig::shallInstall('web')) { - // When --use-php-system is used, there is no alternative for php-fpm.sock. - if(ISPConfig::wantsPHP() === 'system') { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.0'; - } else { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.0 ; update-alternatives --set php-fpm.sock /run/php/php7.0-fpm.sock'; - } + $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi' . $this->getSystemPHPVersion() . ' ; update-alternatives --set php-cgi-bin /usr/lib/cgi-bin/php' . $this->getSystemPHPVersion(); $result = $this->exec($cmd); if($result === false) { throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); } + // When --use-php=system is given, there is no alternative for php-fpm.sock and it throws an error. + if(ISPConfig::wantsPHP() !== 'system') { + $cmd = 'update-alternatives --set php-fpm.sock /run/php/php' . $this->getSystemPHPVersion() . '-fpm.sock'; + $result = $this->exec($cmd); + if($result === false) { + throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); + } + } } } diff --git a/lib/os/class.ISPConfigUbuntu2004OS.inc.php b/lib/os/class.ISPConfigUbuntu2004OS.inc.php index acc312982960bc4c01a91be94fc510d83686bcc3..5db54cd6a81022459407b803ed2dbb9944495b9e 100644 --- a/lib/os/class.ISPConfigUbuntu2004OS.inc.php +++ b/lib/os/class.ISPConfigUbuntu2004OS.inc.php @@ -98,28 +98,6 @@ maxretry = 3'; return $jk_jail; } - protected function setDefaultPHP() { - ISPConfigLog::info('Setting default system php version.', true); - $cmd = 'update-alternatives --set php /usr/bin/php7.4'; - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - - if(ISPConfig::shallInstall('web')) { - // When --use-php-system is used, there is no alternative for php-fpm.sock. - if(ISPConfig::wantsPHP() === 'system') { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.4'; - } else { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.4 ; update-alternatives --set php-fpm.sock /run/php/php7.4-fpm.sock'; - } - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - } - } - protected function getSystemPHPVersion() { return '7.4'; } diff --git a/lib/os/class.ISPConfigUbuntuOS.inc.php b/lib/os/class.ISPConfigUbuntuOS.inc.php index 90b562432178fb6fc1edb3444ccefcfddbf6b395..4792ecb5ec7ec3399a88dbc68b3b46434ff9e606 100644 --- a/lib/os/class.ISPConfigUbuntuOS.inc.php +++ b/lib/os/class.ISPConfigUbuntuOS.inc.php @@ -81,28 +81,6 @@ maxretry = 3'; return $jk_jail; } - protected function setDefaultPHP() { - ISPConfigLog::info('Setting default system php version.', true); - $cmd = 'update-alternatives --set php /usr/bin/php7.2'; - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - - if(ISPConfig::shallInstall('web')) { - // When --use-php-system is used, there is no alternative for php-fpm.sock. - if(ISPConfig::wantsPHP() === 'system') { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.2'; - } else { - $cmd = 'update-alternatives --set php-cgi /usr/bin/php-cgi7.2 ; update-alternatives --set php-fpm.sock /run/php/php7.2-fpm.sock'; - } - $result = $this->exec($cmd); - if($result === false) { - throw new ISPConfigOSException('Command ' . $cmd . ' failed.'); - } - } - } - protected function getSystemPHPVersion() { return '7.2'; }