diff --git a/src/etc/inc/util.inc b/src/etc/inc/util.inc index 01a61eb5b..f732d5c3d 100644 --- a/src/etc/inc/util.inc +++ b/src/etc/inc/util.inc @@ -149,6 +149,13 @@ function send_event($cmd) return $backend->sendEvent("{$cmd}"); } +function send_background_event($cmd) +{ + require_once("script/load_phalcon.php"); + $backend = new OPNsense\Core\Backend(); + return $backend->sendBackgroundEvent("{$cmd}"); +} + function is_module_loaded($module_name) { $module_name = str_replace(".ko", "", $module_name); $running = 0; diff --git a/src/opnsense/service/conf/actions_service.conf b/src/opnsense/service/conf/actions_service.conf index e58e6cad0..a7d423776 100644 --- a/src/opnsense/service/conf/actions_service.conf +++ b/src/opnsense/service/conf/actions_service.conf @@ -53,7 +53,7 @@ type:script message:starting sshd [reload|restart.webgui] -command:/usr/local/etc/rc.restart_webgui +command:sleep 2;/usr/local/etc/rc.restart_webgui parameters: type:script message:webConfigurator restart in progress diff --git a/src/www/diag_logs_settings.php b/src/www/diag_logs_settings.php index 3adbdd311..d8128b5ea 100644 --- a/src/www/diag_logs_settings.php +++ b/src/www/diag_logs_settings.php @@ -160,7 +160,7 @@ if ($_POST['resetlogs'] == gettext("Reset Log Files")) { ob_flush(); flush(); log_error(gettext("webConfigurator configuration has changed. Restarting webConfigurator.")); - send_event("&service restart webgui"); + send_background_event("service restart webgui"); $savemsg .= "
" . gettext("WebGUI process is restarting."); } diff --git a/src/www/system_advanced_admin.php b/src/www/system_advanced_admin.php index 8dc9e947e..c53b4e22d 100644 --- a/src/www/system_advanced_admin.php +++ b/src/www/system_advanced_admin.php @@ -615,7 +615,7 @@ if ($restart_webgui) { ob_flush(); flush(); log_error(gettext("webConfigurator configuration has changed. Restarting webConfigurator.")); - send_event("&service restart webgui"); + send_background_event("service restart webgui"); } ?>