Symfony Session Start()未正确保存

时间:2017-04-17 00:58:43

标签: php symfony session

我从一个工作正常的本地环境迁移到共享托管平台。在传输完所有文件后,我的网站停止工作,并且我已将问题跟踪到我的引导程序文件中的Session Start()命令。

以下是相关代码:

引导文件:

require_once __DIR__ . '/../vendor/autoload.php';
require_once __DIR__ . '/functions.php';
require_once __DIR__ . '/connection.php';

$dotenv = new Dotenv\Dotenv(__DIR__);
$dotenv->load();


$session = new Symfony\Component\HttpFoundation\Session\Session();
$session->start();

应用/配置/ config.yml:

session:
        handler_id:  session.handler.native_file
        save_path:   "%kernel.root_dir%/../var/sessions/%kernel.environment%"

以下是我收到的错误消息:

  

警告:SessionHandler :: read():   打开(/ var / php_sessions / sess_b03f80ce089ee5aaa887a02b006e76b0,O_RDWR)   失败:没有这样的文件或目录(2)   /hermes/bosnaweb03b/b700/ipg.briangwaltney/YSC-Main/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Session/Storage/Proxy/SessionHandlerProxy.php   第61行警告:SessionHandler :: write():   打开(/ var / php_sessions / sess_b03f80ce089ee5aaa887a02b006e76b0,O_RDWR)   失败:没有这样的文件或目录(2)   /hermes/bosnaweb03b/b700/ipg.briangwaltney/YSC-Main/vendor/symfony/symfony/src/Symfony/Component/HttpFoundation/Session/Storage/Proxy/SessionHandlerProxy.php   在第69行

我已在可能适用的所有文件夹上将权限设置为可写。

我注意到的一件事是当我调整config.yml文件时,错误永远不会改变。我甚至尝试使用PDO会话存储,但仍然得到完全相同的错误。

我做错了什么?

谢谢!

2 个答案:

答案 0 :(得分:0)

将会话的config.yml规范更改为:

framework:
    session:
        handler_id:  session.handler.native_file
        save_path:   "%kernel.root_dir%/../var/sessions/%kernel.environment%"

答案 1 :(得分:0)

原来这是托管问题。我正在使用iPage,他们不允许我更改会话的保存路径。我切换到了servergrove,它立即工作,没有任何修改。