laravel undefined index session

时间:2014-03-01 01:15:32

标签: php laravel-4

这在过去曾经发生过3次。现在这次我真的想弄明白问题是什么。我最后几次修理它的方式就是走开了。几个小时后我回来时,一切都按预期工作,直到几天后再次发生。我在没有更新任何代码的情况下点击页面,然后突然间一切都停止了。

我在/Illuminate/Session/SessionServiceProvider.php中收到一个未定义的索引:驱动程序错误

Laravel日志文件中没有任何内容。 php_errors.log文件没有任何细节,apache_error.log文件也没有。我完全被难以忍受,并且在水中死了。我已经尝试倒回到以前的提交版本,以确保我没有破坏某些东西。但同样的问题无论我走了多远。

以下是我得到的内容:

  

ErrorException   未定义的索引:驱动程序   打开:/Users/website/laravel4/vendor/laravel/framework/src/Illuminate/Session/SessionServiceProvider.php

protected function registerSessionEvents()
{
    $config = $this->app['config']['session'];

    // The session needs to be started and closed, so we will register a before
    // and after events to do all stuff for us. This will manage the loading
    // the session "payloads", as well as writing them after each request.
    **if ( ! is_null($config['driver']))**
    {
$this->registerBootingEvent();  

第94行突出显示,由上面代码中的两个星号表示。 我正在运行Laravel 4.0版

我也尝试过更新作曲家

composer.json包含:

{
"require": {
    "laravel/framework": "4.0.*"
},
"autoload": {
    "classmap": [
        "app/commands",
        "app/controllers",
        "app/models",
        "app/database/migrations",
        "app/database/seeds",
        "app/libraries",
        "app/tests/TestCase.php"
    ]
},
"scripts": {
    "post-update-cmd": "php artisan optimize"
},
"minimum-stability": "dev"
} 

我也尝试将最小稳定性改为“稳定”,而且似乎也没有这样做。

任何帮助解决这个谜团的人都将不胜感激。

1 个答案:

答案 0 :(得分:1)

会话处理在4.0和4.1之间进行了一些广泛的清理(具体参见https://github.com/laravel/framework/commit/e0fe79e398003e54d54f2626e1283e97209b7f50#diff-a5878ed0d054cbfc634bf582d41b1848)。在改变之前,我曾经看到过不可预测且难以解释会话的问题。

如果您仍在使用4.0版本,那么您很可能在该清理方面处于错误的一面。因此虽然它有点模糊和蓬松,但我建议升级到4.1并查看问题是否消失。