The package that adds redirection with trailing slash to Laravel framework.

v4.0.0 2022-07-27 14:07 UTC


Adds url formatting and redirection with trailing slash to Laravel framework versions 9.x, 8.x, 7.x, 6.x and 5.x.

Build For Laravel Latest Stable Version Latest Unstable Version Total Downloads License

Compatibility Chart

Laravel Trailing Slash Laravel PHP
4.x 9.x 8.0.2+
3.x 8.x 7.3+/8.0+
2.x 7.x 7.3+
1.x 6.x 7.2+
0.3.x 5.7-5.8 7.1.3+
0.2.x 5.6 7.1.3+
0.1.x 5.5 7.0.0+


Step 1: Install package

To get started with Laravel Trailing Slash, use Composer command to add the package to your composer.json project's dependencies:

composer require fsasvari/laravel-trailing-slash

Or add it directly by copying next line into composer.json:

"fsasvari/laravel-trailing-slash": "4.*"

Step 2: Service Provider

After installing the Laravel Trailing Slash library, register the LaravelTrailingSlash\RoutingServiceProvider in your config/app.php configuration file:

'providers' => [
    // Application Service Providers...
    // ...

    // Other Service Providers...
    // ...

Step 3: .htaccess

Copy following redirection code from public/.htaccess to your own project:

<IfModule mod_rewrite.c>
    # Redirect To Trailing Slashes If Not A Folder Or A File...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !(/$|\.)
    RewriteRule (.*) %{REQUEST_URI}/ [R=301,L]

Step 4: Routes

In routes/web.php, you must use routes with trailing slashes now:

Route::get('/', function () {
    return view('welcome');

Route::get('about/', function () {
    return view('about');

Route::get('contact/', function () {
    return view('contact');


Every time you use some Laravel redirect function, trailing slash ("/") will be applied at the end of url.

return redirect('about/');

return back()->withInput();

return redirect()->route('text', ['id' => 1]);

return redirect()->action('IndexController@about');

Change log

Please see CHANGELOG for more information what has changed recently.


There is a problem with overriding Laravel Paginator and LengthAwarePaginator classes. So, every time you use paginate() method on your models, query builders etc., you must set current path for pagination links. Example:

$texts = Text::where('is_active', 1)->paginate();



MIT Licence. Refer to the LICENSE file to get more info.


Frano Šašvari

Email: sasvari.frano@gmail.com