Marius Cramer
2015-05-04 d35b34d03ffe0d92cbaeb4410c913550150fab4e
server/plugins-available/nginx_plugin.inc.php
@@ -959,6 +959,7 @@
      } else {
         $pool_dir = $custom_php_fpm_pool_dir;
      }
      $pool_dir = trim($pool_dir);
      if(substr($pool_dir, -1) != '/') $pool_dir .= '/';
      $pool_name = 'web'.$data['new']['domain_id'];
      $socket_dir = escapeshellcmd($web_config['php_fpm_socket_dir']);
@@ -2355,6 +2356,11 @@
      } else {
         $content = file_get_contents($conf['rootpath'] . '/conf/hhvm_starter.master');
      }
      if(file_exists($conf['rootpath'] . '/conf-custom/hhvm_monit.master')) {
         $monit_content = file_get_contents($conf['rootpath'] . '/conf-custom/hhvm_monit.master');
      } else {
         $monit_content = file_get_contents($conf['rootpath'] . '/conf/hhvm_monit.master');
      }
      
      if($data['new']['php'] == 'hhvm' && $data['old']['php'] != 'hhvm' || $data['new']['custom_php_ini'] != $data['old']['custom_php_ini']) {
@@ -2392,17 +2398,28 @@
         exec('chmod +x /etc/init.d/hhvm_' . $data['new']['system_user'] . ' >/dev/null 2>&1');
         exec('/usr/sbin/update-rc.d hhvm_' . $data['new']['system_user'] . ' defaults >/dev/null 2>&1');
         exec('/etc/init.d/hhvm_' . $data['new']['system_user'] . ' restart >/dev/null 2>&1');
         $monit_content = str_replace('{SYSTEM_USER}', $data['new']['system_user'], $monit_content);
         file_put_contents('/etc/monit/conf.d/hhvm_' . $data['new']['system_user'], $monit_content);
         exec('/etc/init.d/monit restart >/dev/null 2>&1');
       } elseif($data['new']['php'] != 'hhvm' && $data['old']['php'] == 'hhvm') {
         exec('/etc/init.d/hhvm_' . $data['old']['system_user'] . ' stop >/dev/null 2>&1');
         exec('/usr/sbin/update-rc.d hhvm_' . $data['old']['system_user'] . ' remove >/dev/null 2>&1');
         unlink('/etc/init.d/hhvm_' . $data['old']['system_user']);
         if(is_file('/etc/hhvm/'.$data['old']['system_user'].'.ini')) unlink('/etc/hhvm/'.$data['old']['system_user'].'.ini');
         if(is_file('/etc/monit/conf.d/hhvm_' . $data['new']['system_user'])){
            unlink('/etc/monit/conf.d/hhvm_' . $data['new']['system_user']);
            exec('/etc/init.d/monit restart >/dev/null 2>&1');
         }
      }
   }
   //* Update the PHP-FPM pool configuration file
   private function php_fpm_pool_update ($data, $web_config, $pool_dir, $pool_name, $socket_dir) {
      global $app, $conf;
      $pool_dir = trim($pool_dir);
      /*
      if(trim($data['new']['fastcgi_php_version']) != ''){
         $default_php_fpm = false;
@@ -2555,7 +2572,7 @@
      unset($tpl);
      // delete pool in all other PHP versions
      $default_pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']);
      $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir']));
      if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/';
      if($default_pool_dir != $pool_dir){
         if ( @is_file($default_pool_dir.$pool_name.'.conf') ) {
@@ -2567,6 +2584,7 @@
      $php_versions = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ?", $conf["server_id"]);
      if(is_array($php_versions) && !empty($php_versions)){
         foreach($php_versions as $php_version){
            $php_version['php_fpm_pool_dir'] = trim($php_version['php_fpm_pool_dir']);
            if(substr($php_version['php_fpm_pool_dir'], -1) != '/') $php_version['php_fpm_pool_dir'] .= '/';
            if($php_version['php_fpm_pool_dir'] != $pool_dir){
               if ( @is_file($php_version['php_fpm_pool_dir'].$pool_name.'.conf') ) {
@@ -2603,6 +2621,7 @@
      } else {
         $pool_dir = $custom_php_fpm_pool_dir;
      }
      $pool_dir = trim($pool_dir);
      if(substr($pool_dir, -1) != '/') $pool_dir .= '/';
      $pool_name = 'web'.$data['old']['domain_id'];
@@ -2613,7 +2632,7 @@
      }
      // delete pool in all other PHP versions
      $default_pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']);
      $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir']));
      if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/';
      if($default_pool_dir != $pool_dir){
         if ( @is_file($default_pool_dir.$pool_name.'.conf') ) {
@@ -2625,6 +2644,7 @@
      $php_versions = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ?", $data['old']['server_id']);
      if(is_array($php_versions) && !empty($php_versions)){
         foreach($php_versions as $php_version){
            $php_version['php_fpm_pool_dir'] = trim($php_version['php_fpm_pool_dir']);
            if(substr($php_version['php_fpm_pool_dir'], -1) != '/') $php_version['php_fpm_pool_dir'] .= '/';
            if($php_version['php_fpm_pool_dir'] != $pool_dir){
               if ( @is_file($php_version['php_fpm_pool_dir'].$pool_name.'.conf') ) {