This package is a configurable add-on to your laravel application that allows you to do the following:
- Redirect users back to the protected (needs-authorization) page they wanted to visit right after they log-in instead of the default page.
- Redirect users to a particular destination inside or outside your application by providing that link in a url parameter when logging in or on any of your application pages (e.g. https://your-domain.com/login?redirect=https://another-domain.com).
- Configure the redirect parameter, disable it, make it only accept certain regex or change the name of that parameter
- Configure the middleware group used for authentication in case you are not using laravel defaults or want to use the redirect for another middleware group.
Via Composer
composer require hmones/laravel-redirect
To publish the package configuration
php artisan vendor:publish --tag=laravel-redirect-config
The configuration file contains the following parameters:
web_middleware
: the name of your application's web middleware- Env variable:
WEB_MIDDLEWARE
- Default value:
web
- Env variable:
parameter.enabled
whether you would like to enable parameter redirect on your application, once enabled a user can be redirected for example after login given that their login url was as in this example:https://mydomain.com/login?redirect=https://another-url.com
- Env variable:
REDIRECT_PARAMETER_ENABLED
- Default value:
true
- Env variable:
parameter.name
if parameter redirect is enabled, you can customize the query parameter used to capture the redirect link- Env variable:
REDIRECT_PARAMETER
- Default value:
redirect
- Env variable:
parameter.regex
if parameter redirect is enabled, you can add a regex to check the redirect query parameter e.g./^.*mydomain\.com$/
- Env variable:
REDIRECT_REGEX
- Default value:
null
- Env variable:
routes.login
the name of the login route used by your application- Env variable:
LOGIN_ROUTE_NAME
- Default value:
login
- Env variable:
routes.logout
the name of the logout route used by your application- Env variable:
LOGOUT_ROUTE_NAME
- Default value:
logout
- Env variable:
routes.default
the name of the route that the user is redirected to by default after login- Env variable:
DEFAULT_ROUTE_NAME
- Default value:
home
- Env variable:
- Install the package
- Adjust the configuration parameters in your
.env
file or publish the package configuration file to modify it. - Add the package service provider at the end of the providers array in your app configuration file
config\app.php
'providers' => [
...
Hmones\LaravelRedirect\LaravelRedirectServiceProvider::class
],
Please see the changelog for more information on what has changed recently.
composer test
Please see contributing.md for details and a todolist.
If you discover any security related issues, please email author email instead of using the issue tracker.
Please see the license file for more information.