Очистка старых сессий PHP-FPM в /var/lib/php/sessions

asand3r

New member
Сообщения
1
#1
Добрый день,

Обратили внимание, что скрипт /usr/lib/php/sessionclean, входящий в пакет php-common (2:69+ci202009041446+astra1) не удаляет старые файлы сессий из каталога /var/lib/php/sessions.
Конфигурационный файл /etc/php/7.3/fpm/php.ini содержит параметр session.save_path со значением "/tmp", соответственно, скрипт чистит сессии только там. У нас используется отдельный пул для Zabbix frontend, описанный в /etc/php/7.3/fpm/pool.d, где параметр session.save_path переопределен на /var/lib/php/sessions:

php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/sessions


Однако, скрипт туда не ходит. Если закомментировать "session.save_path = /tmp" в файле /etc/php/7.3/fpm/php.ini или переопредедить его на /var/lib/php/sessions - очистка начинает работать.
В конфиге php.ini так же есть такой коммент:

;fix work under MAC
session.save_path = "/tmp"


Не подскажете зачем это сделано и как заставить sessionclean учитывать значения, переопределенные для отдельных пулов в pool.d?
На bugs.debian.org нашёл баг на эту тему: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=902377