我正在尝试摆脱 laravel_session。
我试图为它创建一个中间件
改变驱动使用:array
file
, database
这些都不起作用。每次刷新,我总是看到这个:
我怎样才能做到这一点?有可能做到吗?
最佳答案
如果你根本不想启动 session ,在 Laravel 5.1 中转到 app/Http/Kernel.php 并注释掉与 session 相关的部分:
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\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,
];
请注意,仅删除 StartSession
中间件是不够的,您还必须禁用 ShareErrorsFromSession
和 VerifyCsrfToken
,因为它们依赖在出席的 session 上。如果你想要更多的逻辑,比如为某些路由排除它,你可以覆盖 StartSession 中间件。不过我不知道有任何其他副作用,因为我还没有测试过。
如果您不需要 session 或所有与网站相关的功能,例如,您只是在构建一个 API,您可能想看看 Laravel Lumen为此目的进行了简化。
顺便说一句: session 驱动程序只定义在何处/如何存储 session 服务器端。从客户端来看,它仍然只是一个加密的 cookie。
关于php - 如何从 Laravel 应用程序中删除 laravel_session cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46226218/