Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Maintenance Bundle

Maintenance Bundle Laravel Package

carteni/maintenance-bundle

Symfony bundle to put your site into maintenance mode while allowing access for a whitelist of IP addresses. Configure via YAML or XML, optionally route to a custom controller, and override the maintenance Twig templates to match your app.

View on GitHub
Deep Wiki
Context7

Show your site in maintenance mode. Allow to see the site under maintenance to a list of given IPs.

Frequently asked questions about Maintenance Bundle
Does carteni/maintenance-bundle work with Laravel 9 or 10?
No, this bundle is built for Symfony 2/3 and relies on deprecated Laravel patterns like `AppKernel`. You’d need to manually adapt it or rewrite it as a Laravel middleware for compatibility with Laravel 9+. Test thoroughly, as it may not support PHP 8.x features.
How do I install this bundle in Laravel without breaking routing?
Since Laravel 5.4+, `AppKernel` is deprecated. You’ll need to register the bundle via a custom service provider or rewrite it as middleware in `app/Http/Kernel.php`. The bundle’s Symfony 2 conventions won’t integrate seamlessly with Laravel’s routing system.
Can I whitelist IPv6 addresses or private networks (e.g., 192.168.x.x) for maintenance access?
The bundle supports IP whitelisting, but its implementation may not explicitly handle IPv6 or private network ranges. Test with your specific IPs, and consider adding validation logic if you rely on these formats.
Will this bundle work for API maintenance mode (e.g., blocking API routes during deployments)?
No, this bundle is web-focused and lacks API-specific logic. For APIs, you’d need to create custom middleware or use Laravel’s built-in `maintenance:down` command with additional route filtering.
How do I customize the maintenance page template for my Laravel app?
Override the Twig templates in `app/Resources/MesMaintenanceBundle/views/`. Copy `index.html.twig` or `maintenance.html.twig` to your project and modify them. Ensure your templates extend Laravel’s base layout if needed.
Does this bundle support dynamic IP whitelisting (e.g., adding IPs via a database or environment variable)?
No, the bundle uses static YAML/XML configuration. For dynamic whitelisting, you’d need to extend the bundle or replace it with Laravel’s native `maintenance:down` command, which supports `.env` or database-driven IP lists.
Are there performance concerns with high-traffic sites using this bundle?
Yes, the bundle processes every request through middleware, which could add latency. For high-traffic sites, consider caching the maintenance response (e.g., via Redis) or using Laravel’s `maintenance:down` with a reverse proxy like Nginx for faster redirects.
What happens if the bundle fails (e.g., misconfiguration or server error)?
There’s no built-in fallback mechanism. If the bundle fails, your app may return a 500 error instead of the maintenance page. Test edge cases like malformed IPs or missing templates to ensure graceful degradation.
Can I use this bundle alongside Livewire or Inertia.js?
The bundle doesn’t natively support Livewire/Inertia.js. Ensure your maintenance templates don’t block JavaScript hydration (e.g., avoid inline scripts). For SPAs, consider a client-side maintenance check instead.
Are there alternatives to this bundle for Laravel maintenance mode?
Yes, Laravel’s built-in `maintenance:down` command (via `php artisan`) is a simpler, modern alternative. For advanced IP whitelisting, consider packages like `spatie/laravel-maintenance-mode` or custom middleware. This bundle’s Symfony 2 legacy may not justify its use in new Laravel projects.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
directorytree/privacy-filter-classifier
directorytree/privacy-filter
babenkoivan/elastic-client
innmind/static-analysis
innmind/coding-standard
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata
splash/openapi
splash/scopes
splash/toolkit