使用PHP 7.2的symfony2.8中的session_cache_limiter错误

时间:2018-10-31 09:11:35

标签: php symfony session symfony-2.8 php-7.2

我正在研究已经在Symfony上构建的项目。版本和服务器详细信息如下

PHP:7.2

网络服务器:apache 2.4.6

Symfony:2.8.1.1

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

  

“警告:session_cache_limiter():在以下情况下无法更改缓存限制器   会话处于活动状态”

我在Google上经历了这个问题,发现这是PHP的核心警告。

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

2 个答案:

答案 0 :(得分:1)

似乎在session_start()之后调用了session_cache_limiter()框架。应该先调用它。

答案 1 :(得分:1)

面临此问题的人。请在系统中进行以下检查。 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。