2016-04-19 5 views
1

В настоящее время я работаю с laravel 5.2.29. По каждому запросу создается новый файл сеанса, и старый файл не удаляется.несколько файлов сеанса создаются по каждому запросу в laravel 5.2. *

конфигурации/session.php файл

<?php 
return [ 
    'driver' => env('SESSION_DRIVER', 'file'), 
    'lifetime' => 120, 
    'expire_on_close' => false, 
    'encrypt' => false, 
    'files' => storage_path('framework/sessions'), 
    'connection' => null, 
    'table' => 'sessions', 
    'lottery' => [2, 100], 
    'cookie' => 'laravel_session', 
    'path' => '/', 
    'domain' => null, 
    'secure' => false, 
    'http_only' => true, 
]; 

Я положил все маршруты внутри промежуточного слоя группы 'Интернет'

Route::group(['middleware' => ['web']], function() { 
    //Login 
    Route::post('login', 'User\[email protected]'); 
}); 

Почему это происходит? Как решить эту проблему?

Я попытался сменить имя файла cookie, ранее в laravel 5.2.23 он отлично работает, поэтому я понижаю проект до laravel 5.2.23 и пытался Но не работал.

Кто-то поможет мне решить эту проблему.

+0

Начиная с Laravel 5.2.27, сетевое промежуточное ПО теперь установлено по умолчанию, https://github.com/laravel/lar Авель/BLOB/v5.2.27/приложение/Провайдеры/RouteServiceProvider.php # L56. Попробуйте удалить «Route :: group» и посмотрите, помогает ли это. – James

ответ

1

Удалите группу Route :: group и удалите дубликаты. Что касается старых файлов сеанса, он будет очищен через некоторое время. Просто оставьте это в покое.

0

после обновления с 5.1 до laravel 5.4 У меня была аналогичная проблема, я обнаружил, что я не обновил приложение/Http/Kernel.php правильно.

\Illuminate\Session\Middleware\StartSession::class 

был дважды объявлен в protected $middleware массиве, и в

protected $middlewareGroups 

после его удаления из $middleware массива он начал работать правильно

$middleware применяется ко всем маршрутам и $middlewareGroups применительно к конкретным группам

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