Php Laravel 5.3中未根据请求设置会话存储
我的网站出现如下错误: 我还尝试了一些解决方案,比如web中间件中的wrap Route,但它不起作用 这是我的Kernel.phpPhp Laravel 5.3中未根据请求设置会话存储,php,laravel,laravel-5.3,Php,Laravel,Laravel 5.3,我的网站出现如下错误: 我还尝试了一些解决方案,比如web中间件中的wrap Route,但它不起作用 这是我的Kernel.php <?php namespace App\Http; use App\Http\Middleware\Activated; use Illuminate\Foundation\Http\Kernel as HttpKernel; class Kernel extends HttpKernel { protected $middleware =
<?php
namespace App\Http;
use App\Http\Middleware\Activated;
use Illuminate\Foundation\Http\Kernel as HttpKernel;
class Kernel extends HttpKernel
{
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
];
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\anlutro\LaravelSettings\SaveMiddleware::class,
\Barryvdh\Cors\HandleCors::class,
Activated::class
],
'api' => [
'throttle:60,1',
'bindings',
],
];
(The rest of file)
}
如果需要会话状态、CSRF保护等,则需要使用web中间件
Route::group(['middleware' => ['web']], function () {
// your routes here
});
您的kernel.php应该如下所示
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Session\Middleware\StartSession::class,
];
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\anlutro\LaravelSettings\SaveMiddleware::class,
\Barryvdh\Cors\HandleCors::class,
Activated::class
],
如果需要会话状态、CSRF保护等,则需要使用web中间件
Route::group(['middleware' => ['web']], function () {
// your routes here
});
您的kernel.php应该如下所示
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Session\Middleware\StartSession::class,
];
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\anlutro\LaravelSettings\SaveMiddleware::class,
\Barryvdh\Cors\HandleCors::class,
Activated::class
],
您好,您需要创建一个中间件
php artisan make:middleware AnyNameYouWant
它将为您创建一个很好的样板
public function handle($request, Closure $next)
{
// Your Logic
}
return redirect('whereever you want to redirect');
}
然后将其包含在中间件中
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\anlutro\LaravelSettings\SaveMiddleware::class,
\Barryvdh\Cors\HandleCors::class,
\App\Http\Middleware\YourMiddleware::class
],
我希望这有助于您创建中间件
php artisan make:middleware AnyNameYouWant
它将为您创建一个很好的样板
public function handle($request, Closure $next)
{
// Your Logic
}
return redirect('whereever you want to redirect');
}
然后将其包含在中间件中
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\anlutro\LaravelSettings\SaveMiddleware::class,
\Barryvdh\Cors\HandleCors::class,
\App\Http\Middleware\YourMiddleware::class
],
如果在web中间件中添加路由由于任何原因都不起作用,我希望这会有所帮助,然后尝试将它添加到$middleware到Kernel.php中
protected $middleware = [
//...
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
];
如果在web中间件中添加路由由于任何原因都不起作用,请尝试将其添加到$middleware到Kernel.php中
protected $middleware = [
//...
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
];
我也试过了,但效果不一样:((我还运行了php artisan Opti来清除缓存尝试运行composer dump autoload然后检查OMG!!真的很好:D,迷人!!!很棒的兄弟:)很高兴能帮到你我也试过了,但效果不一样:((,我还运行php artisan Opti清除缓存尝试运行composer dump autoload,然后检查OMG!!它真的很有用:D,迷人!!!很棒的兄弟:)很高兴能帮助您复制