Web中间件组未应用于Laravel中的错误页面?

时间:2017-07-12 10:20:36

标签: php laravel laravel-5 laravel-5.4 laravel-middleware

我正在将Laravel 4.2应用程序升级到Laravel 5.4。

错误页面(在资源/视图/错误中)扩展了一个公共layout.blade.php,它利用了我在中间件组件中通过View :: share()共享的变量,我已将其包含在Web中间件组中。< / p>

错误消息是&#39;未定义变量:...&#39;来自刀片,因为Web中间件组不用于错误页面。

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

如果路由未设置为运行Web中间件,则它在到达错误视图时将不会运行。例如,如果它是一个没有现有路线的404并且没有全部可以回归的话,就会发生这种情况。

如果是这种情况,则有问题的中间件需要位于Kernel.php中的protected $middleware属性中,而不是“web”中间件组。