I'm just wondering if anyone know's if there's a way to activate maintenance mode on a laravel website without using Artisan? I don't have command line access to the server so I can't use Artisan without first updating it on my local site and then push the changes to the server. Is there maybe a master Route that I can add that will deny access to any other routes?
Thanks!
Artisan::call('down'); To bring the application remove the file or call the up command, as shown above.
To perform maintenance mode on Laravel, run the down Artisan command.
What happens after you run php artisan down is that it creates a file named down inside storage/framework . After running php artisan up the file is removed. You can create the file manually inside storage/framework . It will down your project.
You can just call artisan from your application:
Artisan::call('down'); Artisan::call('up');
But since you'll not have access to get your app up because it's down. You can create the functionality yourself:
A route for shut it down, user must be authenticated to do this:
Route::group(array('before' => 'auth'), function() { Route::get('shut/the/application/down', function() { touch(storage_path().'/meta/my.down'); }); });
A route to bring it back up:
Route::get('bring/the/application/back/up', function() { @unlink(storage_path().'/meta/my.down'); });
A filter to check if it's up:
Route::filter('applicationIsUp', function() { if (file_exists($this['path.storage'].'/meta/my.down')) { return Redirect::to('site/is/down'); } });
A route to bring it back up:
Route::get('bring/the/application/back/up', function() { @unlink(storage_path().'/meta/my.down'); });
A route to show a pretty view when your site is down
Route::get('site/is/down', function() { return View::make('views.site.down'); });
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With