php - 如何从 Laravel 应用程序中删除 laravel_session cookie?

标签 php laravel laravel-5

我正在尝试摆脱 laravel_session。

我试图为它创建一个中间件

https://laracasts.com/discuss/channels/laravel/laravel-51-disable-session-and-cookies-for-some-routes

改变驱动使用:array file, database

这些都不起作用。每次刷新,我总是看到这个:

enter image description here

我怎样才能做到这一点?有可能做到吗?

最佳答案

如果你根本不想启动 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 中间件是不够的,您还必须禁用 ShareErrorsFromSessionVerifyCsrfToken,因为它们依赖在出席的 session 上。如果你想要更多的逻辑,比如为某些路由排除它,你可以覆盖 StartSession 中间件。不过我不知道有任何其他副作用,因为我还没有测试过。

如果您不需要 session 或所有与网站相关的功能,例如,您只是在构建一个 API,您可能想看看 Laravel Lumen为此目的进行了简化。

顺便说一句: session 驱动程序只定义在何处/如何存储 session 服务器端。从客户端来看,它仍然只是一个加密的 cookie。

关于php - 如何从 Laravel 应用程序中删除 laravel_session cookie?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46226218/

相关文章:

php - 如何保护 Laravel 存储文件夹

php - `--database` 在 laravel 的 "Artisan::call"方法中不起作用

php - 具有相同属性的多种形式

php - 试图从管理系统注销特定用户 : Laravel 5. 2.37

php - Laravel:大规模 updateOrCreate()

php - 数组在 "IN"语句中被屏蔽为字符串

php - 更新语句破坏数据库

php - CodeIgniter 中的页眉和页脚

php - 在不相关的类中进行静态方法调用的替代方法是什么?

php - Laravel Eloquent - 通过连接多列进行过滤