aw-studio/laravel-redirects
Laravel redirects
This package provides an easy way to create and manage redirects in your Laravel application.
Installation
Install the package via Composer:
composer require aw-studio/laravel-redirects
Publish the packages migrations and config:
php artisan vendor:publish --provider="AwStudio\Redirects\RedirectsServiceProvider"
Run the migration
php artisan migrate
Add AwStudio\Redirects\Middleware\RedirectRoutesMiddleware to /app/Http/Kernel.php:
class Kernel extends HttpKernel
{
protected $middleware = [
...
\AwStudio\Redirects\Middleware\RedirectRoutesMiddleware::class,
],
}
Usage
Using database redirects
The provided Redirect model stores the following attributes:
- from_url
- to_url
- http_status_code (default 301)
- active (default true)
With this you may create redirects like this:
app('redirect.model')->create([
'from_url' => '/old',
'to_url' => '/new',
'http_status_code' => 301
]);
Using config redirects
If you need to configure some (static) redirects you may do so in the config/redirects.php.
'redirects' => [
'/{any}' => '/en/{any}',
],
By default every redirect from the configuration file is handled as a 301.
You may however overwrite it like this:
'redirects' => [
'/old' => ['/temporary-new', 302],
],
Using URL parameters
Both, config and database redirects, support Laravel route parameters:
'redirects' => [
'/blog/{post}' => '/news/{post}',
]
//
app('redirect.model')->create([
'from_url' => 'blog/{post}',
'to_url' => 'news/{post}',
]);
Credits
This package is inspired by and based on the discontinued Neurony/laravel-redirects package and also takes inspiration from spatie/laravel-missing-page-redirector.
Related Packages
Powerful PHP database abstraction layer (DBAL) with many features for database s...
Laravel Serializable Closure provides an easy and secure way to serialize closur...
Cli error handling for console/command-line PHP applications.
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v0.8 | ^7.4| | ^8.0| | MIT | |
| v0.7 | ^7.4| | ^8.0| | MIT | |
| v0.6 | ^7.4| | ^8.0| | MIT | |
| v0.5 | ^7.4| | ^8.0| | MIT | |
| v0.4 | ^7.4| | ^8.0| | MIT | |
| v0.3 | ^7.4 | | ^8.0| | MIT | |
| v0.2 | ^7.4 | | ^8.0| | MIT | |
| v0.1 | ^7.4 | | ^8.40 | MIT |