我有一个很奇怪的问题。未执行Laravel过滤器
在我的本地计算机(Windows 8,XAMPP)上,Laravel过滤器按照他们应该的方式工作,但在服务器上不工作。 (Ubuntu与Apache)。
Route::filter('test_filter', function($request) {
echo 'Inside filter<br />';
});
Route::get('test_server2', array('before' => 'test_filter', function() {
return 'After filter<br />';
}));
当我运行这个从我的本地服务器,输出为:
过滤器内
过滤器后
当我从网络上运行相同的脚本,我得到:
后过滤器
正如你所看到的,过滤器没有被应用。他们从未执行。这不是一个随机或暂时的事情。
我注意到我有一个大型应用程序中的这个问题。我创建了这个简单的代码来检查基本的东西是否可以工作,但是它没有。
有谁知道为什么不能执行过滤器?
我检查了Laravel的源代码中的路由类,但我还没有找到任何可能有助于解决我的问题的东西。
难道非要定义的'应用程序/ filters.php'过滤器?您是否已经在单独的文件中为本地开发或生产定义了任何过滤器? – 2014-10-17 12:06:19
确保您未在测试环境中工作,因为默认情况下所有筛选器都处于禁用状态。 – 2014-10-17 12:31:16
Matt Burrow,是的,我正在测试环境中工作。为什么默认禁用过滤器?我如何启用它们? – woodgate 2014-10-22 07:38:08