Shift with red gradient lettering Skip to content

Common Errors

Laravel: Target class [bindings] does not exist

Illuminate\Contracts\Container\BindingResolutionException: Target class [bindings] does not exist.

Issue

Previous versions of Laravel registered a bindings middleware in the HTTP Kernel api group. Starting with Laravel 8, this middleware is registered by its class name using a static class constant instead of a string.

Solution

While this change is automated by the Laravel 8.x Shift, if you upgraded manually or have other references within your application, you may still have string references to the bindings middleware.

To resolve this error, change any string references from bindings to \Illuminate\Routing\Middleware\SubstituteBindings::class in your app/Http/Kernel.php. While uncommon, be sure to replace this for any additional references to this middleware within your application as well.