Проблема с сессиями, начинающимися на PHP5.4.x

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

session_start(): user session functions not defined on line 84 of file /var/www/vhosts/example.com/symphony/lib/core/class.session.php

Из того, что я вижу, этот обработчик Session выглядит довольно стандартно, поэтому я не понимаю, почему это ошибка?

Живая среда размещается в Rackspace и находится на двух серверах за балансировщиком нагрузки под управлением PHP 5.4.6 (PHP 5.4.6-1ubuntu1.1 (cli) (built: Nov 15 2012 01:18:34)). Из того, что я знаю, у нас есть два сервера БД, где один сконфигурирован для записи, а другой для чтения (Rackspace).

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

1 ответ

Брендо, ошибка, которую вы получаете, когда комментируете ini_set('session.save_handler', 'user') скорее всего, вызвано тем, что у вас не установлен модуль PHP memcache. Если Rackspace настроил ваши серверы для сохранения сеансов на сервере memcache, вам может потребоваться включить модуль memcached PHP, изменив файл php.ini или файл memcache.ini, чтобы session.save_handler = memcached вместо session.save_handler = memcache,

Если вышеперечисленное не работает, вы можете проверить, установлен ли один из модулей PHP, запустив dpkg -l | grep memcache чтобы увидеть, возвращен ли один из модулей PHP.

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