2016-09-17 10 views
-1

Приложение My Silex использует Sentinel для аутентификации. Как я могу исправить эту ошибку?Ошибка сеанса Sentinel при использовании с Silex/Symfony

PHP Предупреждение: ini_set(): активна сессия. Вы не можете изменить настройки ини Модуль сеанса в это время в /home/me/workspace/codeexample/vendor/symfony/http-foundation/Session/Storage/Handler/NativeFileSessionHandler.php на линии 56

Silex поставляется с класс сеанса из symfony. Я бы предположил, что Sentinel использует сессию php напрямую $ _SESSION. Как я могу заставить их сосуществовать? Или есть способ использовать пользовательские сеансовые классы с Sentinel?

ответ

0

Проблема решена. Чтобы заставить Symfony Session сосуществовать с собственной PHP-сессией, мы должны использовать php-мост в качестве хранилища. Вот как я решил проблему в Silex:

$app->register(new \Silex\Provider\SessionServiceProvider(), [ 
    'session.storage' => new \Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage 
]); 

Надеюсь, что помогает другим людям.