我一直使用令人惊叹的Laravel4框架提供的会话后端驱动程序。 官方文件说:
默认情况下,Laravel配置为使用本机会话驱动程序,该驱动程序适用于大多数应用程序。
事实上,我保留了默认驱动程序,它可以很好地处理我所有的Session事务。所以,我毫不费力地发布我的应用程序 我需要了解本机驱动程序的“神奇”之处,以便与所有其他可用选项进行比较。
所以我的问题是: Laravel 4原生会话驱动程序究竟是如何工作的?
任何帮助表示感谢。
答案 0 :(得分:3)
使用本机驱动程序的真正好处是它不需要任何其他设置。如果您在服务器上安装了PHP,并且授予/app/storage/sessions
文件夹正确的权限,那么它将起作用。
您不需要正确配置数据库,也不需要像redis那样安装更高级的东西(尽管这些驱动程序都可以直接使用)。
另请注意,它不使用cookie来存储您的会话数据(不过这也是一个选项,可以将您的驱动程序更改为cookie
。它确实使用cookie来跟踪您的会话ID - 尽管如此会话驱动程序。
答案 1 :(得分:1)
虽然很久以前这个问题已经结束,但这篇文章似乎在“laravel session”关键词中排名很高。
让我提醒别人一件事:
Laravel 4.0 使用“原生”驱动程序 - 会话将由内部PHP会话设施处理。
Laravel 4.1 & 4.2 使用“文件”驱动程序 - 会话将存储在app / storage / sessions中。不再支持“本地”驱动程序。(您无法选择它。)
因此,如果你想利用PHP原生会话,让我们说'session.upload_progress'功能,你只需要session_start(),然后使用原来的$ _SESSION。
查看官方文档:
http://laravel.com/docs/4.0/session
答案 2 :(得分:0)
这正是名称所说的:) 原生会话驱动程序正在使用本机php机制进行会话存储(cookies) - laravel正在使用laravel/vendor/symfony/http-foundation\Symfony/Component/HttpFoundation/Session/Storage/NativeSessionStorage.php
。