session_cache_limiter symfony2.8 错误 php 7.2

session_cache_limiter error in symfony2.8 with php 7.2

我正在开发已经在 Symfony 上构建的项目。版本和服务器详情如下

PHP: 7.2

网络服务器:apache 2.4.6

Symfony:2.8.1.1

我在控制器上初始化新会话时收到警告。仅当我在调试器模式 (app_dev.php) 而不是在生产环境中工作时才会出现此问题。

"Warning: session_cache_limiter(): Cannot change cache limiter when session is active"

我已经解决了 google 的问题,发现它是核心 PHP 警告。

我们如何使用 symfony 2.8 版本解决这个问题?

似乎框架中某处 session_cache_limiter() 在 session_start() 之后被调用。它应该在之前被调用。

谁遇到过这个问题。请在系统中进行以下检查。 1. 检查 Yaml 文件中是否设置了 cache_limiter。默认值必须为零。

parameters:
    session.storage.options:
        cache_limiter: 0
  1. 在流程中还检查是否在自动加载以外的地方设置了会话。

https://symfony.com/doc/2.8/components/http_foundation/sessions.html

  1. 最重要的是 不要使用 session_start 使用 Symfony 的 session->start.

在我们的遗留应用程序中,发现在许多地方使用了 session_start。因此,正如@vrajesh session_start 所说的那样,正在使用。