Я знаю, что этот вопрос может быть немного неясным, и может даже не быть в правильном обмене стека. Итак, я собираюсь начать здесь.
Я бегу flask
и flask-session
с redis
Мой конфиг приложения устанавливает SESSION_TYPE
на 'redis'
Я также использую u-msgpack-python
для совместимости с PHP против pickle
в flask_session/session.py
(изменено вручную в dist-пакетах), но, похоже, это не имеет отношения к тому, работает он или нет.
При запуске этой конфигурации в Debian 9 или Ubuntu 16.04 все работает просто отлично. (Также Python 3.4, или 3.5, и PHP 7.0, и Apache или Nginx (оба работают))
Однако, когда я запускаю точно такую же кодовую базу на Ubuntu 18.04 с Python 3.6, он не будет удерживать сеанс.
Имя файла cookie сеанса PHPSESSID
и префикс ключа PHPSESSID:
Но .. когда я меняю имя файла cookie на что-то вроде MYSESSID
, все это работает и удерживает сеанс в Ubuntu 18.04. Как только я изменяю его на PHPSESSID
, он не может удерживать сеанс.
Я наблюдал за сервером Redis и вижу, что сеанс приходит с данными, поэтому я знаю, что он правильно связывается.
Другая информация:
Запуск: Nginx 1.14.0, Python 3.6, Ubuntu 18.04, PHP 7.2
Любое направление или понимание будет полезно. Возможно, это версия PHP?
Не стесняйтесь менять теги по мере необходимости или попросите дополнительную информацию, и я предоставлю, как смогу. У меня полный root-доступ к серверу.