diff --git a/actions/DisplayAction.php b/actions/DisplayAction.php index f9ceea1f..607ffbfd 100644 --- a/actions/DisplayAction.php +++ b/actions/DisplayAction.php @@ -16,6 +16,10 @@ class DisplayAction implements ActionInterface { public function execute(array $request) { + if (Configuration::getConfig('system', 'enable_maintenance_mode')) { + return new Response('503 Service Unavailable', 503); + } + $bridgeFactory = new BridgeFactory(); $bridgeClassName = $bridgeFactory->createBridgeClassName($request['bridge'] ?? ''); diff --git a/config.default.ini.php b/config.default.ini.php index 955dc9c0..93ce11f9 100644 --- a/config.default.ini.php +++ b/config.default.ini.php @@ -25,6 +25,9 @@ enable_debug_mode = false ; debug_mode_whitelist[] = 127.0.0.1 ; debug_mode_whitelist[] = 192.168.1.10 +; Whether to enable maintenance mode. If enabled, feed requests receive 503 Service Unavailable +enable_maintenance_mode = false + [http] timeout = 60 useragent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0"