Developer Tales or everything about everything

22Фев/140

ps_files_cleanup_dir: permission denied

В некоторых случаях, при определенной конфигурации сервера и интерпретатора PHP, в логах работы можно встретить записи, подобные этой:

session_start(): ps_files_cleanup_dir: opendir(/var/lib/php/session) failed: Permission denied (13)

Объясняется эта ошибка достаточно просто: PHP пытается удалить устаревшие данные из директории сессий, но интерпретатору не хватает прав - обычно, отсутствуют права на чтение (в моем случае директория имела флаги 0773).

Эта проблема встречалась в ОС Debian Linux, но знающие люди говорят, что такое возможно и в Ubuntu.

Способов решения этой проблемы несколько (упорядочено от наилучшего решения до наихудшего):

  1. Изменить владельца директории на пользователя, под которым запускается PHP. Сделать это можно с помощью команды chown. Естественно, Вы должны точно знать, что директория, в которой хранятя сессии, используется только для этой цели;
  2. Установить в файле конфигурации PHP session.gc_probability = 0. Эта конфигурация полностью отключит функцию удаления старых сессий. Т.к. в ОС Linux временные директории чистятся с помощью планировщика задач cron, то отключив GC, мы ничего не потеряем;
  3. Изменить директорию хранения сессий PHP на директорию, к которой можно обеспечить безопасный полный доступ для PHP. Для этого нужно изменить значение конфигурации session.save_path в php.ini;
  4. Назначить права 0777 на директорию с сессиями с помощью команды chmod. Этого лучше не делать, т.к. общий доступ к сессиям - потенциальная брешь в безопасности.

Просмотров: 1465
26Май/120

Количество сетевых подключений в Linux

Информацию о текущем количестве подключений в linux поможет выудить следующая команда:

Просмотров: 2054
Метки записи: , Читать полностью
26Май/120

Пожалуй, начнем > /dev/null

Не самое удивительное дело в сегодняшние дни - открыть блог. Затея далеко не нова и многим уже не интересна.

Более того, блоги не способствуют созданию  хорошо структурированных информационных ресурсов. Однако, давно пришла в голову мысль о том, что по мере получения опыта теряется много интересных знаний, которые стоило бы где-нибудь запечатлить, дабы в следующий раз не исследовать просторы интернета.

Да-да. В этом блоге будет собираться не все подряд (по мере возможностей, конечно), а полезные рецепты при готовке приложений :)

Раз уж эта статья находится в разделе /dev/null,  кратко расскажу о том, что такое /dev/null. Да, на вики это есть, но далеко не всегда мы набредаем на то, что хотим.

Просмотров: 2580
Метки записи: , Читать полностью