Общий сеанс на основе Redis Между Laravel и устаревшим программным обеспечением

#php #laravel #session #redis

Вопрос:

Я очень новичок в Redis и довольно новичок в Laravel, поэтому мог бы воспользоваться некоторыми указателями на это.

У нас есть устаревшее PHP-приложение, которое хранит сеансы в Redis, и я могу видеть его в Redis с соглашением об именах по умолчанию, т. Е.: PHPREDIS_SESSION:1bd9ca87f5b606a35891c807857c2fde

Мы движемся к платформе API Laravel, и в качестве краткосрочного гибридного решения мы хотим, чтобы уровень API мог распознавать и работать с сеансом, который уже был создан с помощью устаревшего приложения.

Я медленно продвигаюсь в понимании Redis, и я могу видеть записи устаревшей системы в Redis от Laravel (если я подключусь с пустым префиксом), но есть ли способ сократить специализированную обработку Laravel и загрузить то же PHPREDIS_SESSION пространство?

Я вращался вокруг этого так много раз, что мне интересно, не пропустил ли я что-то простое.

Ответ №1:

В конечном счете я заставил это работать, просто обновив свой .env файл с помощью:

 REDIS_PREFIX=PHPREDIS_SESSION:
CACHE_PREFIX=
 

Я надеялся избежать этого, так как это своего рода блеф, но он работает, и я полагаю, что файл конфигурации лучше, чем заставлять Laravel действовать вопреки правилам.

Теперь Laravel распознает сеанс, сохраняемый моим устаревшим приложением, и пытается загрузить его. Теперь мне просто нужно синхронизировать де/сериализацию…