Unfortunately this package is now discontinued.
Please check out Varbox (Laravel Admin Panel) for this functionality and much more.
- Buy: https://varbox.io/buy
- Docs: https://varbox.io/docs
- Demo: https://demo.varbox.test/admin
- Repo https://github.com/VarboxInternational/varbox
Thank you!
This package allows you to create simple or multiple nested redirects for your Laravel applications.
This package can be useful from an SEO perspective, when in your application, you have URLs that have the potential of being modified.
Example of the dynamic redirecting logic:
-
Let's assume you have an URL called
/original
-
You create a redirect from
/original
to/modified
Accessing
/original
will redirect to/modified
-
You create another redirect from
/modified
to/modified-again
Accessing
/modified
will redirect to/modified-again
AND
Accessoing/original
will redirect to/modified-again
-
You create another redirect from
/modified-again
to/modified-yet-again
Accessing
/modified-again
will redirect to/modified-yet-again
AND
Accessing/modified
will redirect to/modified-yet-again
AND
Accessing/original
will redirect to/modified-yet-again
-
You create another redirect from
modified-yet-again
to/original
Accessing
/modified-yet-again
will redirect to/original
AND
Accessing/modified-again
will redirect to/original
AND
Accessing/modified
will redirect to/original
Install the package via Composer:
composer require neurony/laravel-redirects
Publish the config file with:
php artisan vendor:publish --provider="Neurony\Redirects\ServiceProvider" --tag="config"
Publish the migration file with:
php artisan vendor:publish --provider="Neurony\Redirects\ServiceProvider" --tag="migrations"
After the migration has been published you can create the redirects
table by running:
php artisan migrate
In order for the redirecting functionality to actually happen, you need to add the Neurony\Redirects\Middleware\RedirectRequests
middleware.
Go to App\Http\Kernel
and add the Neurony\Redirects\Middleware\RedirectRequests
middleware in your $middlewareGroups
groups of choice.
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
...
\Neurony\Redirects\Middleware\RedirectRequests::class,
You should never use the Neurony\Redirects\Models\Redirect
directly, as this is the default concrete implementation for the Neurony\Redirects\Contracts\RedirectModelContract
.
Using the Neurony\Redirects\Models\Redirect
model class directly will prevent you from being able to extend the model's capabilities.
You can create redirects that will be stored inside the redirects
table like this:
app('redirect.model')->create([
'old_url' => '/your-old-url',
'new_url' => '/your-new-url',
'status' => 301
]);
To see how you can extend the Neurony\Redirects\Models\Redirect
model's capabilities, please read the comments from /config/redirects.php -> redirect_model
If you discover any security related issues, please email andrei.badea@neurony.ro instead of using the issue tracker.
The MIT License (MIT). Please see LICENSE for more information.
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.