我不确定如何完全解释这一点,所以请耐心等待。
我正在使用Laravel。我的开发环境在流浪盒上,工作正常。我刚刚上传到生产网站并遇到了一些问题。生产站点是运行CentOS的专用服务器。
我有一个通过SessionsController
处理的登录信息。提交时,如果成功,我们会使用Session::store()
重定向到主页,如果出现错误,我们会使用登录页面,如下所示:
public function store()
{
$input = Input::all();
$attempt = Auth::attempt([
'email' => $input['email']
, 'password' => $input['password']
]);
if($attempt)
{
return Redirect::home()->with(['flash_message'=>'You have been logged in.']);
}
else
{
return Redirect::back()->with(['flash_message'=>'Your UserName or Password are incorrect. Please try again']);
}
}
同样,这在开发环境中运行良好。然而,在生产服务器上,我得到一个加载的页面,并且闪存消息信息没有通过。
点击“登录”
请参阅地址栏中的/sessions
链接以及屏幕上显示的消息:“重定向到site.com/login”
浏览器重定向到/login
,但没有闪存消息。
如果我尝试使用任何其他功能,例如创建新用户,我会得到相同的结果。用户已添加,但由于屏幕/user
显示的消息显示:“重定向到site.com/user”,我不会收到Flash消息反馈。
我怀疑这是生产服务器设置中的问题,因为它在开发环境中按预期工作,但我不确定在哪里查看。
答案 0 :(得分:0)
我刚刚找到解决方案:http://forumsarchive.laravel.io/viewtopic.php?id=11742
我的路线文件中有一个血腥空间导致它在生产服务器上错误地加载。仍然不确定为什么它在开发环境中工作但是......