Очистка сессий в ModX и ошибки session_start()
После перехода на PHP7 и включения
session.gc_probability = 1
session.gc_divisor = 100
для автоматической очистки устаревших сессий. Случайным образом сыпятся ошибки:
Got error 'PHP message: PHP Warning: session_start(): Session callback expects true/false return value in /srv/www/core/model/modx/modx.class.php on line 2270\n'
Кто-нибудь сталкивался? Как с этим бороться? В яндексе нашел кучу сайтов у которых уже заиндексировались подобные ошибки, значит проблема носит массовый характер. :(
session.gc_probability = 1
session.gc_divisor = 100
для автоматической очистки устаревших сессий. Случайным образом сыпятся ошибки:
Got error 'PHP message: PHP Warning: session_start(): Session callback expects true/false return value in /srv/www/core/model/modx/modx.class.php on line 2270\n'
Кто-нибудь сталкивался? Как с этим бороться? В яндексе нашел кучу сайтов у которых уже заиндексировались подобные ошибки, значит проблема носит массовый характер. :(
Комментарии: 7
Похоже это баг ModX, связанный с несовместимостью…
Завел тикет: github.com/modxcms/revolution/issues/13073
Но если кто-то уже решал проблему, отпишитесь, пожалуйста.
Завел тикет: github.com/modxcms/revolution/issues/13073
Но если кто-то уже решал проблему, отпишитесь, пожалуйста.
Это же warning, что сессия уже ранее была стартанута. Ну поставь @ перед и забей либо правь там где идёт вызов session_start дополнительную проверку:
if (session_status() !== PHP_SESSION_ACTIVE) {
session_start();
}
if (session_status() !== PHP_SESSION_ACTIVE) {
session_start();
}
Вообще-то нет… Это warning о том, что callback функция ModX, переопределяющая поведения сборщика мусора сессий возвращает что-то иное, чем true/false.
Такая же точно проблема была в roundcube и решили ее вот так:
github.com/roundcube/roundcubemail/commit/d72e5afb47b68151ac5912dbd52732b41c84cb5c
Такая же точно проблема была в roundcube и решили ее вот так:
github.com/roundcube/roundcubemail/commit/d72e5afb47b68151ac5912dbd52732b41c84cb5c
Примерно с июля массово фиксируется рандомное появление 404 на рабочих страницах.
Превышений по нагрузке вроде бы нет.
Но лог modhost у меня завален этой ошибкой, подозреваю связь с появлением 404.
Превышений по нагрузке вроде бы нет.
Но лог modhost у меня завален этой ошибкой, подозреваю связь с появлением 404.
Константин, вы как-то решили данную проблему?
И да и нет. Это явная ошибка ModX. Там нужно переписывать одну функцию, чтобы та возвращала корректное значение. Я оставил подробное описание того, что требуется исправить на github'е:
github.com/modxcms/revolution/issues/13073
Но разработчики не очень-то торопятся исправлять эту ошибку. Уже 2 месяца, как тикет висит не закрытым.
github.com/modxcms/revolution/issues/13073
Но разработчики не очень-то торопятся исправлять эту ошибку. Уже 2 месяца, как тикет висит не закрытым.
Отправил PR в ядро — вроде работает.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.