From 4ffb51e51f89a45256836fb55ad1c29f5e06beb2 Mon Sep 17 00:00:00 2001 From: ftimme <ft@falkotimme.com> Date: Mon, 19 Sep 2011 06:17:52 -0400 Subject: [PATCH] - Added nginx support to the installer. --- server/plugins-available/apps_vhost_plugin.inc.php | 63 +++++++++++++++++++++---------- 1 files changed, 43 insertions(+), 20 deletions(-) diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php index 47107b0..47202a8 100644 --- a/server/plugins-available/apps_vhost_plugin.inc.php +++ b/server/plugins-available/apps_vhost_plugin.inc.php @@ -75,35 +75,58 @@ $app->uses("getconf"); $web_config = $app->getconf->get_server_config($conf["server_id"], 'web'); - // Dont just copy over the virtualhost template but add some custom settings - $content = file_get_contents($conf["rootpath"]."/conf/apache_apps.vhost.master"); + if($web_config['server_type'] == 'apache'){ + // Dont just copy over the virtualhost template but add some custom settings + $content = file_get_contents($conf["rootpath"]."/conf/apache_apps.vhost.master"); - $vhost_conf_dir = $web_config['vhost_conf_dir']; - $vhost_conf_enabled_dir = $web_config['vhost_conf_enabled_dir']; - $apps_vhost_servername = ($web_config['apps_vhost_servername'] == '')?'':'ServerName '.$web_config['apps_vhost_servername']; + $vhost_conf_dir = $web_config['vhost_conf_dir']; + $vhost_conf_enabled_dir = $web_config['vhost_conf_enabled_dir']; + $apps_vhost_servername = ($web_config['apps_vhost_servername'] == '')?'':'ServerName '.$web_config['apps_vhost_servername']; - $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']; + $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']; - $content = str_replace('{apps_vhost_ip}', $web_config['apps_vhost_ip'], $content); - $content = str_replace('{apps_vhost_port}', $web_config['apps_vhost_port'], $content); - $content = str_replace('{apps_vhost_dir}', $web_config['website_basedir'].'/apps', $content); - $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content); - $content = str_replace('{apps_vhost_basedir}', $web_config['website_basedir'], $content); + $content = str_replace('{apps_vhost_ip}', $web_config['apps_vhost_ip'], $content); + $content = str_replace('{apps_vhost_port}', $web_config['apps_vhost_port'], $content); + $content = str_replace('{apps_vhost_dir}', $web_config['website_basedir'].'/apps', $content); + $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content); + $content = str_replace('{apps_vhost_basedir}', $web_config['website_basedir'], $content); - // comment out the listen directive if port is 80 or 443 - if($web_config['apps_vhost_ip'] == 80 or $web_config['apps_vhost_ip'] == 443) { - $content = str_replace('{vhost_port_listen}', '#', $content); - } else { - $content = str_replace('{vhost_port_listen}', '', $content); + // comment out the listen directive if port is 80 or 443 + if($web_config['apps_vhost_ip'] == 80 or $web_config['apps_vhost_ip'] == 443) { + $content = str_replace('{vhost_port_listen}', '#', $content); + } else { + $content = str_replace('{vhost_port_listen}', '', $content); + } + } + + if($web_config['server_type'] == 'nginx'){ + // Dont just copy over the virtualhost template but add some custom settings + $content = file_get_contents($conf["rootpath"]."/conf/nginx_apps.vhost.master"); + + $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']; + + $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']; + + if($web_config['apps_vhost_ip'] == '_default_'){ + $apps_vhost_ip = ''; + } else { + $apps_vhost_ip = $web_config['apps_vhost_ip'].':'; + } + + $content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content); + $content = str_replace('{apps_vhost_port}', $web_config['apps_vhost_port'], $content); + $content = str_replace('{apps_vhost_dir}', $web_config['website_basedir'].'/apps', $content); + $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content); + $content = str_replace('{fpm_port}', $web_config['php_fpm_start_port'], $content); } file_put_contents("$vhost_conf_dir/apps.vhost", $content); - $app->services->restartServiceDelayed('httpd','restart'); - - } -- Gitblit v1.9.1