Проблемы с PHP 5.3 и папкой сессий

Я недавно обновил до PHP 5.3, и с тех пор я получаю (спорадические) сообщения об ошибках, которые указывают на Apache (или может быть инструмент для очистки файлов сессии), не имеет никаких полномочий к папке, где сессии хранятся.
Это происходит случайным образом и не может быть воспроизведено с точными шагами, которые привели меня предполагать, что это - инструмент для очистки сессии.
У кого-либо есть опыт с такими ошибками?

Сообщение об ошибке (в который стреляют session_start() строка):

ps_files_cleanup_dir: opendir (/var/lib/php5) перестал работать: Разрешение отклонено.

ls - буква на каталоге сессии дает:

drwx-wx-wt  2 root          root          4096 2010-05-25 12:39 php5

В этом каталоге я действительно вижу файлы сессии, принадлежавшие www-данным, которые являются моим Apache, и приложение действительно хорошо работает. Который заставляет меня задаться вопросом, под которым пользователь делает сессию выполнения GC?

80
задан Itay Moav -Malimovka 25 May 2010 в 19:49
поделиться

2 ответа

Исправление: В вашем php.ini установите для session.gc_probability значение 0

Причина Думаю, я нашел ответ здесь http://somethingemporium.com/2007/06/obscure-error-with-php5-on-debian-ubuntu-session-phpini-garbage

По сути, сборка мусора настраивается для выполнения заданиями cron в некоторых системах (например, Ubuntu / Debian). Некоторые исполняемые файлы php ini, такие как php-cli, также пытаются выполнить сборку мусора, что приводит к полученной вами ошибке.

120
ответ дан 24 November 2019 в 09:56
поделиться

В настоящее время я использую решение (которое, я не уверен, является правильным) - передать право владения папкой сеанса пользователю Apache (www-data в моем случае).

1
ответ дан 24 November 2019 в 09:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: