ftimme
2011-09-28 99b55bfba53aa6de380c84a036b286c951533dcb
- nginx: If apps vhost is reconfigured, apps pool (PHP-FPM) is reconfigured as well.
- Installer adds Apache and nginx user to ispapps group.
- Installer makes sure that /var/www/apps has 755 permissions.
1 files added
5 files modified
67 ■■■■■ changed files
install/dist/lib/fedora.lib.php 4 ●●●● patch | view | raw | blame | history
install/dist/lib/gentoo.lib.php 8 ●●●● patch | view | raw | blame | history
install/dist/lib/opensuse.lib.php 4 ●●●● patch | view | raw | blame | history
install/lib/installer_base.lib.php 10 ●●●●● patch | view | raw | blame | history
server/conf/apps_php_fpm_pool.conf.master 19 ●●●●● patch | view | raw | blame | history
server/plugins-available/apps_vhost_plugin.inc.php 22 ●●●● patch | view | raw | blame | history
install/dist/lib/fedora.lib.php
@@ -857,6 +857,8 @@
        if($conf['apache']['installed'] == true){
            $command = 'usermod -a -G ispconfig '.$conf['apache']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'usermod -a -G ispapps '.$conf['apache']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        if($conf['nginx']['installed'] == true){
            $command = 'usermod -a -G ispconfig '.$conf['nginx']['user'];
@@ -864,6 +866,8 @@
            // Allow the ispapps vhost access to /etc/squirrelmail
            $command = 'usermod -a -G '.$conf['apache']['group'].' ispapps';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'usermod -a -G ispapps '.$conf['nginx']['user']';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        
        //* Make the shell scripts executable
install/dist/lib/gentoo.lib.php
@@ -572,8 +572,10 @@
            $command = 'adduser '.$conf['apache']['user'].' '.$apps_vhost_group;
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        
            if (!@is_dir($install_dir)) {
            if(!@is_dir($install_dir)){
                mkdir($install_dir, 0755, true);
            } else {
                chmod($install_dir, 0755);
            }
            chown($install_dir, $apps_vhost_user);
            chgrp($install_dir, $apps_vhost_group);
@@ -864,10 +866,14 @@
        if($conf['apache']['installed'] == true){
            $command = 'usermod -a -G ispconfig '.$conf['apache']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'usermod -a -G ispapps '.$conf['apache']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        if($conf['nginx']['installed'] == true){
            $command = 'usermod -a -G ispconfig '.$conf['nginx']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'usermod -a -G ispapps '.$conf['nginx']['user'];
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        
        //* Make the shell scripts executable
install/dist/lib/opensuse.lib.php
@@ -894,10 +894,14 @@
        if($conf['apache']['installed'] == true){
            $command = 'groupmod --add-user '.$conf['apache']['user'].' ispconfig';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'groupmod --add-user '.$conf['apache']['user'].' ispapps';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        if($conf['nginx']['installed'] == true){
            $command = 'groupmod --add-user '.$conf['nginx']['user'].' ispconfig';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'groupmod --add-user '.$conf['nginx']['user'].' ispapps';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        
        //* Make the shell scripts executable
install/lib/installer_base.lib.php
@@ -1396,7 +1396,11 @@
            $command = 'adduser '.$conf['apache']['user'].' '.$apps_vhost_group;
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            if(!@is_dir($install_dir)) mkdir($install_dir, 0755, true);
            if(!@is_dir($install_dir)){
                mkdir($install_dir, 0755, true);
            } else {
                chmod($install_dir, 0755);
            }
            chown($install_dir, $apps_vhost_user);
            chgrp($install_dir, $apps_vhost_group);
@@ -1744,10 +1748,14 @@
        if($conf['apache']['installed'] == true){
            $command = 'adduser '.$conf['apache']['user'].' ispconfig';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'adduser '.$conf['apache']['user'].' ispapps';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        if($conf['nginx']['installed'] == true){
            $command = 'adduser '.$conf['nginx']['user'].' ispconfig';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
            $command = 'adduser '.$conf['nginx']['user'].' ispapps';
            caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
        }
        //* Make the shell scripts executable
server/conf/apps_php_fpm_pool.conf.master
New file
@@ -0,0 +1,19 @@
[{fpm_pool}]
listen = {fpm_socket}
listen.owner = {fpm_user}
listen.group = {fpm_group}
listen.mode = 0660
user = {fpm_user}
group = {fpm_group}
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
chdir = /
php_admin_flag[magic_quotes_gpc] = off
server/plugins-available/apps_vhost_plugin.inc.php
@@ -99,6 +99,9 @@
            } else {
                $content = str_replace('{vhost_port_listen}', '', $content);
            }
            file_put_contents("$vhost_conf_dir/apps.vhost", $content);
            $app->services->restartServiceDelayed('httpd','restart');
        }
        
        if($web_config['server_type'] == 'nginx'){
@@ -108,6 +111,9 @@
            $vhost_conf_dir = $web_config['nginx_vhost_conf_dir'];
            $vhost_conf_enabled_dir = $web_config['nginx_vhost_conf_enabled_dir'];
            $apps_vhost_servername = ($web_config['apps_vhost_servername'] == '')?'_':$web_config['apps_vhost_servername'];
            $apps_vhost_user = 'ispapps';
            $apps_vhost_group = 'ispapps';
        
            $web_config['apps_vhost_port'] = (empty($web_config['apps_vhost_port']))?8081:$web_config['apps_vhost_port'];
            $web_config['apps_vhost_ip'] = (empty($web_config['apps_vhost_ip']))?'_default_':$web_config['apps_vhost_ip'];
@@ -129,10 +135,20 @@
            $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content);
            //$content = str_replace('{fpm_port}', $web_config['php_fpm_start_port']+1, $content);
            $content = str_replace('{fpm_socket}', $fpm_socket, $content);
            // PHP-FPM
            // Dont just copy over the php-fpm pool template but add some custom settings
            $fpm_content = file_get_contents($conf["rootpath"]."/conf/apps_php_fpm_pool.conf.master");
            $fpm_content = str_replace('{fpm_pool}', 'apps', $fpm_content);
            //$fpm_content = str_replace('{fpm_port}', $web_config['php_fpm_start_port']+1, $fpm_content);
            $fpm_content = str_replace('{fpm_socket}', $fpm_socket, $fpm_content);
            $fpm_content = str_replace('{fpm_user}', $apps_vhost_user, $fpm_content);
            $fpm_content = str_replace('{fpm_group}', $apps_vhost_group, $fpm_content);
            file_put_contents($web_config['php_fpm_pool_dir'].'/apps.conf', $fpm_content);
            file_put_contents("$vhost_conf_dir/apps.vhost", $content);
            $app->services->restartServiceDelayed('httpd','reload');
        }
        file_put_contents("$vhost_conf_dir/apps.vhost", $content);
        $app->services->restartServiceDelayed('httpd','restart');
    }