hmones / laravel-redirect
Redirects users automatically after login to the previous protected route they were trying to access
v1.1.0
2022-05-09 08:29 UTC
Requires
- composer-runtime-api: ^2.0
- ext-json: *
- illuminate/support: ~7|~8|~9
Requires (Dev)
- orchestra/testbench: ~5|~6
- phpunit/phpunit: ~9.0
This package is auto-updated.
Last update: 2024-11-09 15:31:06 UTC
README
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.
Installation
Via Composer
composer require hmones/laravel-redirect
Configuration
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:
Usage
- 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 ],
Change log
Please see the changelog for more information on what has changed recently.
Testing
composer test
Contributing
Please see contributing.md for details and a todolist.
Security
If you discover any security related issues, please email author email instead of using the issue tracker.
Credits
License
Please see the license file for more information.