Zend_Session / Zend_Auth がランダムにエラーメッセージ ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) をスローします 質問する

Zend_Session / Zend_Auth がランダムにエラーメッセージ ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) をスローします 質問する

私は現在、Zend_Auth などを使用した新しいアプリケーションに取り組んでいますが、何らかの理由で、このエラー メッセージが完全にランダムに任意の場所に表示されます (少なくともそのように見えます)。

Zend_Session::start()- /home/hannes/workspace/develop/library/Zend/Session.php(行:480): エラー #8 session_start()[function.session-start]: ps_files_cleanup_dir: opendir(/var/lib/php5) が失敗しました: 権限が拒否されました (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(オブジェクト(Zend_Controller_Request_Http)、オブジェクト(Zend_Controller_Response_Http)、配列)
  • #7 /home/hannes/workspace/develop/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(オブジェクト(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 {メイン}

ベストアンサー1

どうやらこの問題は主に(のみ?)debian/ubuntu ベースのシステムに影響を及ぼしており、自動セッション ガベージ コレクションに関係しているようです。

php.ini で変数 session.gc_probability が 1 に設定されています。これは、ガベージ コレクターが実行され、php セッションが保存されているディレクトリ /var/lib/php5 がクリーンアップされる確率が 1% であることを意味します。

どうやらこのフォルダは www-data では書き込み不可で、上記のエラーが発生し、Zend 例外がスローされます。session.gc_probability を 0 に設定すると、問題は解決しました。セッション フォルダは cron ジョブによってクリーンアップされるため、php ガベージ コレクターを実行する必要すらありません。

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

おすすめ記事