Используйте компонент сеанса Symfony, но без фреймворка

Я использую компоненты Symofny в 4-й версии, но не весь фреймворк. У меня есть ядро, в котором я реализую HttpKernelInterface и использую объект Request из пакета Symfony\Component\HttpFoundation.

В методах обработки я хотел бы использовать сеансы (также symfony). Когда я пытаюсь начать сеанс, у меня возникает ошибка, что собственный сеанс php работает.

<?php
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Component\HttpFoundation\Session\Storage\PhpBridgeSessionStorage;

final class Kernel implements HttpKernelInterface
{
 public function handler(Request $request, $type = self::MASTER_REQUEST, $catch = true)
 {
   //Case one
   $session = new Session(); 
   $session->start();//throw error
   // Case two
   $session = new Session(new PhpBridgeSessionStorage());
   $session->start(); //is working, but use native php sessions
 }
}

Когда я использую PhpBridgeSessionStorage, он работает хорошо, но использует собственный сеанс php, собственный идентификатор сеанса.

Как я могу удалить собственные сеансы в этом случае, не удаляя их из файла php.ini. У меня есть несколько виртуальных хостов, что им нужно.

Спасибо за любые подсказки.


Редактировать:

я сделал php_value session.auto_start 1 в хтакс. и перемещен new Session() выше Request::createFromGlobals() в этом случае запрос выдает ту же ошибку. Когда я пытаюсь вызвать $request->getSession(), он возвращает ноль.

Любые идеи, что я могу сделать, чтобы использовать сеансы Symfony?

Если я правильно понимаю, и у вас есть апач, то в .htaccess для использования каталога php_value session.auto_start 0 может быть.

AbraCadaver 13.02.2019 22:40

Это не работает. Но я также протестировал отключенный автозапуск в php.ini. Тоже выкидывать ошибку. Я думаю, что проблема в объекте запроса. Этот объект инициирует сеанс. Когда я устанавливаю новый сеанс перед запросом, затем возникает ошибка выдачи объекта запроса, что сеанс существует. Но это странно, потому что когда я пытаюсь вызвать $request->getSession(), он возвращает null.

jaroApp 14.02.2019 08:40
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
158
0

Другие вопросы по теме