2015-11-04 4 views
2

Я разрабатываю небольшой веб-сайт и имею проблемы с сеансом. При попытке войти в систему или сделать вызов AJAX, я получаю следующее RuntimeException:Магазин Laravel Session не установлен по запросу

RuntimeException in Request.php line 758: Session store not set on request. 

in Request.php line 758 
at Request->session() in VerifyCsrfToken.php line 87 
at VerifyCsrfToken->tokensMatch(object(Request)) in VerifyCsrfToken.php line 49 
at VerifyCsrfToken->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Language.php line 38 
at Language->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(Language), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 59 
at EncryptCookies->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 
at Pipeline->then(object(Closure)) in Kernel.php line 122 
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 87 
at Kernel->handle(object(Request)) in index.php line 54 

Любая идея, что я сделал неправильно. Заранее спасибо

ответ

0

удалить Everyting внутри этой папки storage/framework/sessions и убедитесь, что эта папка имеет разрешение на запись

+0

Это не помогло, я все еще получаю RuntimeException, но благодаря в любом случае – icemanblas

0

существует ли файл «/config/session.php» в вашем проекте? Если нет, создайте его и убедитесь, что все параметры установлены правильно.

+2

Да, это действительно так, и, насколько мне известно, все параметры установлены правильно. Я дважды проверю и посмотрю, есть ли что-то, что я могу сделать. Тем не менее, мне пришлось создать новый проект и вручную импортировать все мои файлы , и теперь другой проект работает так, как ожидалось. – icemanblas

1

Посмотрите на @Cas Bloem его ответ здесь это помогло мне удивительно:

Laravel - Session store not set on request

Вот почему она не работает для меня. Причина, по которой вы используете сеанс, который соответствует требованиям к токенам CSRF (я думаю, я новичок в Laravel).

Также, если вы перейдете в app-> http-> middleware-> VerifyCsrfToken, вы можете добавить маршруты к массиву, который не будет проверен для проверки CSRF. Этот плюс Cas Bloem его исправить (разместить маршруты в другом разделе в routes.php) исправил мою проблему. Я просто разрабатываю/изучаю на localhost прямо сейчас, но вам нужно реализовать это позже.

Надеюсь, что это поможет/очищает дело!

+0

Это решение работает только для laravel 5.2. Что не работает OP – mhughes

1

Предполагая, что вы используете Laravel 5.2: вам понадобится использовать промежуточное программное обеспечение, если вам нужно состояние сеанса, защита CSRF и т. Д. (Как глобальный 5.1)

Route :: группа ([ 'промежуточного' => [ 'веб']], функция() {

+1

OP утверждает, что использует 5.1 –

+0

Да, я использовал 5.1 в этом проекте, и, как я сказал ранее, решение было создать новую копию Laravel 5.1 и импортировать все файлы, которые я сгенерировал. Этот проект был некоторые разработчики работали над этим, и мне удалось справиться с этим. Спасибо за помощь, но это был один из видов опыта, поэтому правильный ответ не может быть выбран, хотя ваши ответы могут работать и по другим вопросам, связанным с этим исключением. – icemanblas

Смежные вопросы