luisinder/maintenance-middleware

Slim 3 middleware that returns an error when maintenance mode is activated

v2.0.0 2025-08-06 15:46 UTC

This package is auto-updated.

Last update: 2025-08-10 16:10:01 UTC


README

Latest Stable Version Total Downloads

Synopsis

Slim 3 middleware that returns an error when maintenance mode is activated.

Installation

With Composer:

composer require luisinder/maintenance-middleware

Params

  • Status: Enable/Disable Middleware (global maintenance mode)
  • Object returned: This object is return into response when status = true
  • Specific pages (optional): Array of specific pages/routes to put in maintenance mode

Use

Global maintenance mode (original behavior)

$errorObject = new Example\ErrorClass();
$app->add(new Luisinder\Middleware\Maintenance(false, $errorObject));

Specific pages maintenance mode

$errorObject = new Example\ErrorClass();

// Single page
$app->add(new Luisinder\Middleware\Maintenance(false, $errorObject, '/admin'));

// Multiple specific pages
$specificPages = ['/admin', '/dashboard', '/api/admin'];
$app->add(new Luisinder\Middleware\Maintenance(false, $errorObject, $specificPages));

// Using wildcards for pattern matching
$specificPages = ['/admin/*', '/api/admin/*'];
$app->add(new Luisinder\Middleware\Maintenance(false, $errorObject, $specificPages));

Examples of specific page patterns

  • /admin - Exact match for /admin page
  • /admin/* - All pages starting with /admin/ (like /admin/users, /admin/settings)
  • /api/v1/* - All API v1 endpoints
  • / - Home page only