From 1dbd0e3540eba5d304f54842ae4cfd8397484d29 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Mon, 19 Oct 2015 09:22:51 -0400
Subject: [PATCH] FS#2403 - Disable apps vhost in server config
---
interface/web/admin/templates/server_config_web_edit.htm | 3 +++
interface/web/admin/lib/lang/ar_server_config.lng | 1 +
interface/web/admin/lib/lang/es_server_config.lng | 1 +
install/tpl/server.ini.master | 1 +
interface/web/admin/lib/lang/tr_server_config.lng | 1 +
server/plugins-available/apps_vhost_plugin.inc.php | 20 ++++++++++++++++++++
interface/web/admin/form/server_config.tform.php | 6 ++++++
interface/web/admin/lib/lang/de_server_config.lng | 1 +
interface/web/admin/lib/lang/nl_server_config.lng | 1 +
interface/web/admin/lib/lang/hu_server_config.lng | 1 +
interface/web/admin/lib/lang/pl_server_config.lng | 1 +
interface/web/admin/lib/lang/ru_server_config.lng | 1 +
interface/web/admin/lib/lang/el_server_config.lng | 1 +
interface/web/admin/lib/lang/ro_server_config.lng | 1 +
interface/web/admin/lib/lang/br_server_config.lng | 1 +
interface/web/admin/lib/lang/hr_server_config.lng | 1 +
interface/web/admin/lib/lang/fr_server_config.lng | 1 +
interface/web/admin/lib/lang/fi_server_config.lng | 1 +
interface/web/admin/lib/lang/se_server_config.lng | 1 +
interface/web/admin/lib/lang/en_server_config.lng | 1 +
interface/web/admin/lib/lang/sk_server_config.lng | 1 +
interface/web/admin/lib/lang/cz_server_config.lng | 1 +
interface/web/admin/lib/lang/it_server_config.lng | 1 +
interface/web/admin/lib/lang/id_server_config.lng | 1 +
interface/web/admin/lib/lang/ja_server_config.lng | 1 +
interface/web/admin/lib/lang/pt_server_config.lng | 1 +
interface/web/admin/lib/lang/bg_server_config.lng | 1 +
27 files changed, 53 insertions(+), 0 deletions(-)
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index d50d244..286dc07 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -72,6 +72,7 @@
group=www-data
nginx_user=www-data
nginx_group=www-data
+apps_vhost_enabled=y
apps_vhost_port=8081
apps_vhost_ip=_default_
apps_vhost_servername=
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 9886208..adc55b1 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -1038,6 +1038,12 @@
1 => 'y'
)
),
+ 'apps_vhost_enabled' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array (0 => 'n', 1 => 'y')
+ ),
'apps_vhost_port' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng
index e2f2db4..5000079 100644
--- a/interface/web/admin/lib/lang/ar_server_config.lng
+++ b/interface/web/admin/lib/lang/ar_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng
index 4365d91..3d805a9 100644
--- a/interface/web/admin/lib/lang/bg_server_config.lng
+++ b/interface/web/admin/lib/lang/bg_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng
index e34e4ff..212f9c0 100644
--- a/interface/web/admin/lib/lang/br_server_config.lng
+++ b/interface/web/admin/lib/lang/br_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index 8df2dbe..eddcd21 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -253,5 +253,6 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index aa448d8..13f7834 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -266,4 +266,5 @@
$wb['php_handler_txt'] = 'Standard-PHP-Handler';
$wb['enable_spdy_txt'] = 'Stellt SPDY zur Verfügung';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng
index 2cef4ed..e672f60 100644
--- a/interface/web/admin/lib/lang/el_server_config.lng
+++ b/interface/web/admin/lib/lang/el_server_config.lng
@@ -250,4 +250,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng
index b5e4237..ac7e2d5 100644
--- a/interface/web/admin/lib/lang/en_server_config.lng
+++ b/interface/web/admin/lib/lang/en_server_config.lng
@@ -281,4 +281,5 @@
$wb['xmpp_port_pastebin_txt'] = 'Pastebin';
$wb['xmpp_port_bosh_txt'] = 'BOSH';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng
index a62b3f6..16e406c 100644
--- a/interface/web/admin/lib/lang/es_server_config.lng
+++ b/interface/web/admin/lib/lang/es_server_config.lng
@@ -253,4 +253,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng
index f4f8856..061465c 100755
--- a/interface/web/admin/lib/lang/fi_server_config.lng
+++ b/interface/web/admin/lib/lang/fi_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index 0ceb4af..8fa674c 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -252,5 +252,6 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng
index eaf7fb6..c11593f 100644
--- a/interface/web/admin/lib/lang/hr_server_config.lng
+++ b/interface/web/admin/lib/lang/hr_server_config.lng
@@ -256,6 +256,7 @@
$wb['cron_wget_error_regex'] = 'Neispravna cron wget putanja.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng
index 58b9524..1e4c2a1 100644
--- a/interface/web/admin/lib/lang/hu_server_config.lng
+++ b/interface/web/admin/lib/lang/hu_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng
index 5f89667..8c26f26 100644
--- a/interface/web/admin/lib/lang/id_server_config.lng
+++ b/interface/web/admin/lib/lang/id_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng
index c3d435b..3b5cfcf 100644
--- a/interface/web/admin/lib/lang/it_server_config.lng
+++ b/interface/web/admin/lib/lang/it_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng
index 3f3c639..76e1cf8 100644
--- a/interface/web/admin/lib/lang/ja_server_config.lng
+++ b/interface/web/admin/lib/lang/ja_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng
index e9c32b5..b31b452 100644
--- a/interface/web/admin/lib/lang/nl_server_config.lng
+++ b/interface/web/admin/lib/lang/nl_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng
index 9c55a4f..d1a0b67 100644
--- a/interface/web/admin/lib/lang/pl_server_config.lng
+++ b/interface/web/admin/lib/lang/pl_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng
index 712d15a..3081121 100644
--- a/interface/web/admin/lib/lang/pt_server_config.lng
+++ b/interface/web/admin/lib/lang/pt_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng
index d6d950f..5ecec82 100644
--- a/interface/web/admin/lib/lang/ro_server_config.lng
+++ b/interface/web/admin/lib/lang/ro_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng
index 1acfb05..fbddb89 100644
--- a/interface/web/admin/lib/lang/ru_server_config.lng
+++ b/interface/web/admin/lib/lang/ru_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng
index baf79af..8bf64ed 100644
--- a/interface/web/admin/lib/lang/se_server_config.lng
+++ b/interface/web/admin/lib/lang/se_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng
index 1e8ae4d..6e79b15 100644
--- a/interface/web/admin/lib/lang/sk_server_config.lng
+++ b/interface/web/admin/lib/lang/sk_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng
index 2e7a7df..531fe07 100644
--- a/interface/web/admin/lib/lang/tr_server_config.lng
+++ b/interface/web/admin/lib/lang/tr_server_config.lng
@@ -255,4 +255,5 @@
$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
$wb['network_filesystem_txt'] = 'Network Filesystem';
$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
+$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
?>
diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm
index 9f8f9d8..f32e147 100644
--- a/interface/web/admin/templates/server_config_web_edit.htm
+++ b/interface/web/admin/templates/server_config_web_edit.htm
@@ -228,6 +228,9 @@
</div>
<div class="col-sm-3"></div><div class="col-sm-9"><button class="btn btn-default formbutton-default" type="button" data-toggle="collapse" data-target="#toggle-apps_vhost_settings" aria-expanded="false" aria-controls="toggle-apps_vhost_settings">{tmpl_var name='apps_vhost_settings_txt'}</button></div>
<div id="toggle-apps_vhost_settings" class="collapse">
+ <div class="form-group">
+ <label for="apps_vhost_enabled" class="col-sm-3 control-label">{tmpl_var name='apps_vhost_enabled_txt'}</label>
+ <div class="col-sm-9">{tmpl_var name='apps_vhost_enabled'}</div></div>
<div class="form-group">
<label for="apps_vhost_port" class="col-sm-3 control-label">{tmpl_var name='apps_vhost_port_txt'}</label>
<div class="col-sm-9"><input type="text" name="apps_vhost_port" id="apps_vhost_port" value="{tmpl_var name='apps_vhost_port'}" class="form-control" /></div></div>
diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php
index 320f3d0..d5d5dc8 100644
--- a/server/plugins-available/apps_vhost_plugin.inc.php
+++ b/server/plugins-available/apps_vhost_plugin.inc.php
@@ -119,6 +119,16 @@
/* end of backwards compatibility section */
$app->system->file_put_contents("$vhost_conf_dir/apps.vhost", $content);
+
+ // enabled / disable apps-vhost
+ $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/000-apps.vhost');
+ if(is_link($vhost_symlink) && $web_config['apps_vhost_enabled'] == 'n') {
+ $app->system->unlink($vhost_symlink);
+ }
+ if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost') && $web_config['apps_vhost_enabled'] == 'y') {
+ symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost');
+ }
+
$app->services->restartServiceDelayed('httpd', 'restart');
}
@@ -185,6 +195,16 @@
file_put_contents($web_config['php_fpm_pool_dir'].'/apps.conf', $fpm_content);
file_put_contents("$vhost_conf_dir/apps.vhost", $content);
+
+ // enabled / disable apps-vhost
+ $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/000-apps.vhost');
+ if(is_link($vhost_symlink) && $web_config['apps_vhost_enabled'] == 'n') {
+ $app->system->unlink($vhost_symlink);
+ }
+ if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost') && $web_config['apps_vhost_enabled'] == 'y') {
+ symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost');
+ }
+
$app->services->restartServiceDelayed('httpd', 'reload');
}
}
--
Gitblit v1.9.1