Intereting Posts
Каков наилучший способ проверки дублирующих полей TEXT в MYSQL / PHP? Логическая ошибка для отображения данных таблицы MySQL Белый экран смерти! непрерывный цикл через массив PHP (или объектные ключи) Как изменить mysql на mysqli? Каков самый быстрый и эффективный способ хранения и получения изображений, когда у вас есть миллионы пользователей на сервере LAMP? добавление параметров URL в форму PHP HTML предотвратить открытие страницы на iframe? Проверьте, что сеанс PHP уже запущен Поле формы интеллектуального местоположения facebook connect- $ user_id = $ facebook-> getUser (); всегда возвращается 0 почему он петляет больше, чем однажды … я что-то не хватает Любое обходное решение для использования PHP SoapClient с локальным файлом WSDL (NON-URI)? Изменено PDO :: ATTR_EMULATE_PREPARES на FALSE и появляется ошибка «Недопустимый номер параметра» используя mod_rewrite для имитации нескольких подкаталогов

Zend_Session / Zend_Auth случайно генерирует сообщение об ошибке ps_files_cleanup_dir: opendir (/ var / lib / php5) не удалось: разрешение отклонено (13)

В настоящее время я работаю над новым Приложением, использующим (помимо прочего) Zend_Auth, но по какой-либо причине это сообщение об ошибке появляется в любом месте полностью случайно (или так оно швы)

Zend_Session::start() – /home/hannes/workspace/develop/library/Zend/Session.php(Line:480): Ошибка # 8 session_start() [function.session-start]: ps_files_cleanup_dir: opendir (/ var / lib / php5) failed: Permission denied (13) Массив

  • # 0 /home/hannes/workspace/develop/library/Zend/Session/Namespace.php(143): Zend_Session :: start (true)
  • # 1 /home/hannes/workspace/develop/library/Zend/Auth/Storage/Session.php(87): Zend_Session_Namespace -> __ construct ('Zend_Auth')
  • # 2 /home/hannes/workspace/develop/library/Zend/Auth.php(91): Zend_Auth_Storage_Session -> __ construct ()
  • # 3 /home/hannes/workspace/develop/library/Zend/Auth.php(141): Zend_Auth-> getStorage ()
  • # 4 /home/hannes/workspace/develop/xxxxxxx/application/controllers/AdminController.php(10): Zend_Auth-> hasIdentity ()
  • # 5 /home/hannes/workspace/develop/library/Zend/Controller/Action.php(133): AdminController-> init ()
  • # 6 /home/hannes/workspace/develop/library/Zend/Controller/Dispatcher/Standard.php(262): Zend_Controller_Action -> __ construct (Object (Zend_Controller_Request_Http), Object (Zend_Controller_Response_Http), массив)
  • # 7 /home/hannes/workspace/develop/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard-> отправка (объект (Zend_Controller_Request_Http), объект (Zend_Controller_Response_Http))
  • # 8 /home/hannes/workspace/develop/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front-> dispatch ()
  • # 9 /home/hannes/workspace/develop/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap-> run ()
  • # 10 /home/hannes/workspace/develop/xxxxxxx/public/index.php(26): Zend_Application-> run ()
  • # 11 {main}

Решение состоит в том, чтобы установить session.save_path в файле php.ini в записываемый каталог. например: session.save_path = "/ tmp". Переключение сборки мусора сеанса в первом примере не является хорошей идеей. Второй пример не работает на Ubuntu 10.04

По-видимому, эта проблема затрагивает в основном (только?) Системы debian / ubuntu и связана с автоматической сборкой мусора сеанса.

Переменная session.gc_probability была установлена ​​в 1 в php.ini, что означает, что для сборщика мусора будет 1% -ная вероятность запуска и очистка каталога / var / lib / php5, где хранятся сеансы php.

По-видимому, эта папка недоступна для записи через www-данные, что приводит к указанной ошибке и бросает исключение Zend. Установка session.gc_probability в 0 решило проблему. Папка сеанса в любом случае очищается от работы cron, поэтому нет необходимости в том, чтобы сборщик мусора php даже запускался.

От http://somethingemporium.com/2007/06/obscure-error-with-php5-on-debian-ubuntu-session-phpini-garbage

Фактически изменение каталога session.save_path отключает сбор мусора. Вот почему он теперь работает для вас. Если вы хотите сбор мусора, вы можете изменить оригинального владельца каталога на пользователя php «www-data»,

chown www-data / var / lib / php5

В качестве альтернативы вы можете написать сценарий сбора мусора для нового каталога.

У меня также была проблема с инфраструктурой Symfony, проблема в том, что php не имеет разрешения на каталог хранения сеансов. Просто измените каталог сохранения сеанса на место, где можно записывать файлы. В Zend Framework Bootstrap config ini:

 resources.session.save_path = APPLICATION_PATH "/../data/session" 

У меня была проблема с OS X 10.8.4 с MAMP, используя первую Zend Framework. Набор каталогов для session.save_path в php.ini по умолчанию – /Applications/MAMP/tmp/php . Я смог решить это, только удалив все в этом каталоге.

Если вы используете PHP 7.0

 sudo chown www-data:www-data /var/lib/php/sessions