Laravel会话数据消失了

时间:2017-10-06 16:01:09

标签: php laravel

最近我注意到laravel会话数据不起作用。我的意思是我可以登录等,但所有方法都

return back()->withInput()->with('success', 'sucess msg');

不再工作了。既不输入也不发送成功消息。

例如:我有这些路线:

Route::get('/profile/{id}', 'Frontend\UserController@profile');
Route::post('/profile', 'Frontend\UserController@update');

第一条路线打开一个用户个人资料页面,在那里他可以编辑他的个人资料并提交表格,然后调用更新方法:

public function update(Request $request) {

    if($this->userService->validate($request)) {

        if($this->userService->update()) {
            return redirect('/profile/' . $request->id)->with('success', 'Profile updated!');
        }

    }

    return back()->withInput()->with('profile_errors', $this->userService->errors());           

}

如果用户成功更新,我会向他显示一条成功消息,该消息可在以下视图中访问:

        @if(session('success')) 
            <div class="alert alert-success">
              <strong>Success!</strong> {{ session('success')  }}
            </div>              
        @endif

我知道这段代码以前运作良好。但最近我注意到它并没有,并且在返回重定向或返回back()方法之后,网络上的所有成功,验证错误和所有输入数据都消失了。我是laravel的新手,我应该寻找什么来解决这个问题?

编辑评论:这是.htaccess文件的内容:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>
    RewriteEngine On
    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
<IfModule mime_module>
  AddType application/x-httpd-ea-php70 .php .php7 .phtml
</IfModule> 

0 个答案:

没有答案