我花了太多时间搞乱这个
我刚从laravel开始并开始了一个新项目。 我希望能够拥有一个系统,某些用户可以在开发过程中访问该网站。其余的公众被转发到启动页面。 我计划创建一个秘密路线,在会话中设置切换。如果设置了此切换,则用户可以使用整个系统。否则,它们会被重定向到启动页面。
问题是我无法让它重定向。我一直在bootstrap-> start.php文件中添加代码。标准
header('location:www.thesite.com')
开始做一些我不理解的有趣事情。
如果我跑
return Redirect::to(htmlspecialchars_decode($url))
它返回错误:
BadMethodCallException
Method [run] does not exist on Redirect.
我完全不知道发生了什么或如何解决它。 为什么重定向脚本会返回错误? start.php不是正确的位置吗? 如果是这样,如何在laravel中实现我的目标?
答案 0 :(得分:1)
您应该在before
的{{1}}过滤器中执行此操作,如下所示:
app/filters.php
App::before(function($request){
if(!$request->is('splash') && Input::get('allow') != '1')
{
return Redirect::to('/splash');
}
);
是您的启动画面路线。然后,您可以/splash
绕过启动画面。
http://www.example.com?allow=1
过滤器是在应用程序中的每个路径之前运行的函数。
请告诉我这是否适合您!