Zend_Session / Zend_Auth löst zufällig die Fehlermeldung ps_files_cleanup_dir aus: opendir (/ var / lib / php5) ist fehlgeschlagen: Berechtigung verweigert (13)
Zur Zeit arbeite ich an einer neuen Anwendung, die (unter anderem) Zend_Auth aber, aus welchem Grund auch immer, diese Fehlermeldung ist, zeigt sich an jedem Ort völlig zufällig (oder so es scheint)
Zend_Session::start()
- /home/hannes/workspace/develop/library/Zend/Session.php(Zeile:480): Fehler #8session_start()
[function.session-start]: ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) Array
- #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): der Zend_Controller_Action erweitert->__construct(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http), Array)
- #7 /home/hannes/workspace/develop/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(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}
InformationsquelleAutor der Frage Hannes | 2010-05-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Lösung ist, um die Sitzung.save_path in der php.ini-Datei auf einem beschreibbaren Verzeichnis.
zum Beispiel: session.save_path = "/tmp".
Umschalten der session garbage collection aus, die im ersten Beispiel ist nicht eine gute Idee. Das zweite Beispiel funktioniert nicht auf Ubuntu 10.04
InformationsquelleAutor der Antwort Toz
Anscheinend ist dieses Problem betrifft vor allem (nur?) debian/ubuntu-basierte Systeme und hat zu tun mit der automatischen session-garbage-collection.
Vom http://somethingemporium.com/2007/06/obscure-error-with-php5-on-debian-ubuntu-session-phpini-garbage
InformationsquelleAutor der Antwort robertbasic
Tatsächliche änderung des Verzeichnisses der Sitzung.save_path stellt sich die garbage collection aus. Das ist, warum es nun für Sie arbeitet. Wenn Sie möchten, dass die garbage collection können Sie die original-directory-owner auf php-user "www-data"
chown www-data /var/lib/php5
In die alternative, die Sie können schreiben, garbage collection-Skript für das neue Verzeichnis.
InformationsquelleAutor der Antwort Rob
Ich hatte dieses problem mit dem Symfony-framework auch, das problem ist das php nicht über die Berechtigung, um die session-storage-Verzeichnis. Ändern Sie einfach die session-save-Verzeichnis irgendwo beschreibbar. Im Zend Framework Bootstrap config ini:
InformationsquelleAutor der Antwort Brady Olsen
Ich habe dieses Problem auf OS X 10.8.4 mit MAMP, mit dem ersten Zend-Framework. Die verzeichnisgruppe für
session.save_path
imphp.ini
standardmäßig ist/Applications/MAMP/tmp/php
. Ich war in der Lage, es zu lösen, nur durch das löschen alles, was in diesem Verzeichnis.InformationsquelleAutor der Antwort Artem Gordinsky
Wenn Sie mit PHP 7.0
InformationsquelleAutor der Antwort BadHorsie